# AND (Transact-SQL)

**THIS TOPIC APPLIES TO:**SQL Server (starting with 2008)Azure SQL DatabaseAzure SQL Data Warehouse Parallel Data Warehouse

Combines two Boolean expressions and returns **TRUE** when both expressions are **TRUE**. When more than one logical operator is used in a statement, the **AND** operators are evaluated first. You can change the order of evaluation by using parentheses.

Transact-SQL Syntax Conventions

## Syntax

```
boolean_expression AND boolean_expression
```

## Arguments

*boolean_expression*

Is any valid expression that returns a Boolean value: **TRUE**, **FALSE**, or **UNKNOWN**.

## Result Types

**Boolean**

## Result Value

Returns TRUE when both expressions are TRUE.

## Remarks

The following chart shows the outcomes when you compare TRUE and FALSE values by using the AND operator.

TRUE | FALSE | UNKNOWN | |
---|---|---|---|

TRUE |
TRUE | FALSE | UNKNOWN |

FALSE |
FALSE | FALSE | FALSE |

UNKNOWN |
UNKNOWN | FALSE | UNKNOWN |

## Examples

### A. Using the AND operator

The following example selects information about employees who have both the title of `Marketing Assistant`

and more than `41`

vacation hours available.

```
-- Uses AdventureWorks
SELECT BusinessEntityID, LoginID, JobTitle, VacationHours
FROM HumanResources.Employee
WHERE JobTitle = 'Marketing Assistant'
AND VacationHours > 41 ;
```

### B. Using the AND operator in an IF statement

The following examples show how to use AND in an IF statement. In the first statement, both `1 = 1`

and `2 = 2`

are true; therefore, the result is true. In the second example, the argument `2 = 17`

is false; therefore, the result is false.

```
IF 1 = 1 AND 2 = 2
BEGIN
PRINT 'First Example is TRUE'
END
ELSE PRINT 'First Example is FALSE';
GO
IF 1 = 1 AND 2 = 17
BEGIN
PRINT 'Second Example is TRUE'
END
ELSE PRINT 'Second Example is FALSE' ;
GO
```

## See Also

Built-in Functions (Transact-SQL)

Operators (Transact-SQL)

SELECT (Transact-SQL)

WHERE (Transact-SQL)