сравнивает каждую пару, состоящую из даты заказа (date) и номера товара (customer_id), со списком пар, и если оба компонента в паре совпадают с соответствующими компонентами какой-либо пары из списка, то строка таблицы Orders (Заказы) будет включена в результат запроса. Таким образом, запрос отбирает заказы товаров № 1 и № 2, сделанные 12 и 13 декабря 2007 г. (табл. 3.13). Таблица 3.13. Результат выполнения запроса
В отличие от функций LEAST, GREATEST, INTERVAL и COALESCE, списком значений для оператора IN может быть не только фиксированный перечень аргументов, но и результат подзапроса (соответствующий пример мы рассматривали в подразделе «Вложенные запросы» главы 2).
Следующий оператор проверяет отсутствие первого операнда в списке значений, который является вторым операндом.
Оператор x NOT IN (<Список значений>)Оператор «не содержится в списке» возвращает результат, противоположный результату оператора IN:
• 1 (TRUE), если х не совпадает ни с одним из элементов списка;
• 0 (FALSE) – если х совпадает с одним из элементов списка;
• NULL, если х равен NULL, а также в тех случаях, когда в списке присутствует значение NULL и при этом
возвращает результат, представленный в табл. 3.11.
Этот оператор, как и оператор IN, может работать с составными значениями, а также со списком, полученным в результате подзапроса.
Следующий оператор проверяет соответствие первого операнда шаблону, который является вторым операндом.
Оператор x LIKE yОператор сравнения с шаблоном возвращает следующие значения:
• 1 (TRUE) – если х соответствует шаблону у;
• 0 (FALSE) – если х не соответствует шаблону у;
• NULL – если х или
В шаблоне можно использовать два специальных подстановочных символа:
• % – на месте знака процента может быть любое количество произвольных символов операнда
• _ – на месте знака подчеркивания может быть ровно один произвольный символ операнда