NOT

NOT може використовуватися для інвертування значень Буля. Приклад запиту з NOT:

 

SELECT * FROM Customers WHERE city = 'Dallas' OR NOT rating > 200;

 

При такому запиті будуть вибрані всі замовники з Далласа і всі замовники, рейтинг яких менше 200. В цьому запиті оператор NOT застосовується тільки до виразу rating >200. Можна зробити складніший запит:

 

SELECT * FROM Customers WHERE NOT( city = 'Dallas' OR rating > 200 );

 

У цьому запиті NOT застосований до обох виразів в дужках. В даному випадку, сервер зчитує вирази в дужках, визначає, чи відповідає істині рівність city = 'Dallas' або рівність rating > 200. Якщо будь-яка умова вірна, вираз Буля всередині дужок теж вірний. Але, якщо вираз Буля усередині дужок вірний, предикат є невірним, тому що NOT перетворить вірність в невірність і навпаки. Тобто, будуть вибрані всі замовники що не знаходяться в Далласі і рейтинг яких менше 200.