NOT (Transact-SQL)

THIS TOPIC APPLIES TO: yesSQL Server (starting with 2008)yesAzure SQL DatabaseyesAzure SQL Data Warehouse yesParallel Data Warehouse

Negates a Boolean input.

Topic link icon Transact-SQL Syntax Conventions

Syntax

[ NOT ] boolean_expression  

Arguments

boolean_expression
Is any valid Boolean expression.

Result Types

Boolean

Result Value

NOT reverses the value of any Boolean expression.

Remarks

Using NOT negates an expression.

The following table shows the results of comparing TRUE and FALSE values using the NOT operator.

NOT
TRUE FALSE
FALSE TRUE
UNKNOWN UNKNOWN

Examples

The following example finds all Silver colored bicycles that do not have a standard price over $400.

-- Uses AdventureWorks  

SELECT ProductID, Name, Color, StandardCost  
FROM Production.Product  
WHERE ProductNumber LIKE 'BK-%' AND Color = 'Silver' AND NOT StandardCost > 400;  
GO  

Here is the result set.

ProductID   Name                     Color         StandardCost
---------   -------------------      ------      ------------
984         Mountain-500 Silver, 40  Silver        308.2179
985         Mountain-500 Silver, 42  Silver        308.2179
986         Mountain-500 Silver, 44  Silver        308.2179
987         Mountain-500 Silver, 48  Silver        308.2179
988         Mountain-500 Silver, 52  Silver        308.2179
(6 row(s) affected)

Examples: Azure SQL Data Warehouse and Parallel Data Warehouse

The following example restricts results to SalesOrderNumber to values starting with SO6 and ProductKeys greater than or equal to 400.

-- Uses AdventureWorks  

SELECT ProductKey, CustomerKey, OrderDateKey, ShipDateKey  
FROM FactInternetSales  
WHERE SalesOrderNumber LIKE 'SO6%' AND NOT ProductKey < 400;  

See Also

Expressions (Transact-SQL)
Built-in Functions (Transact-SQL)
Operators (Transact-SQL)
SELECT (Transact-SQL)
WHERE (Transact-SQL)