Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
• При использовании ключевого слова IN гораздо легче управлять порядком<br />
обработки (так как используется меньшее количество операторов).<br />
• Логические операторы IN почти всегда быстрее обрабатываются, чем списки<br />
логических операторов OR.<br />
• Самое большое преимущество логического оператора IN в том, что в данном<br />
операторе может содержаться еще одна инструкция SELECT, а это позволяет<br />
создавать очень динамичные предложения WHERE. Более подробно вы об этом<br />
узнаете в уроке 11, "Использование подзапросов".<br />
IN<br />
Ключевое слово, используемое в предложении WHERE для указания списка значений,<br />
обрабатываемых так же, как это делается в случае применения ключевого слова OR.<br />
Использование ключевого слова NOT<br />
Логический оператор NOT предложения WHERE служит для выполнения только<br />
одной функции – отрицать все предложения, следующие за ним. Поскольку NOT никогда<br />
не используется сам по себе (а только вместе с другими логическими операторами), его<br />
синтаксис немного отличается от синтаксиса остальных операторов. В отличие от них,<br />
NOT вставляется перед названием столбца, значения которого нужно отфильтровать, а не<br />
после.<br />
NOT<br />
Ключевое слово, применяемое в предложении WHERE для отрицания какого-то условия.<br />
В следующем примере демонстрируется использование логического оператора<br />
NOT. Чтобы извлечь список продуктов, изготовленных всеми производителями, кроме<br />
DLL01, можно потребовать выполнить следующее:<br />
ВВОД<br />
SELECT prod_name<br />
FROM Produces<br />
WHERE NOT vend_id = 'DLL01'<br />
ORDER BY prod_name;<br />
ВЫВОД<br />
prod_name<br />
12 inch teddy bear<br />
18 inch teddy bear<br />
8 inch teddy bear<br />
King doll<br />
Queen doll<br />
Анализ<br />
Здесь логический оператор NOT отрицает предложение, следующее за ним.<br />
Поэтому СУБД извлекает не те значения vend_id, которые совпадают с DLL01, а все<br />
остальные.<br />
Предыдущий запрос можно было также выполнить при помощи операции :<br />
ВВОД<br />
SELECT prod_name<br />
FROM Products<br />
WHERE vend_id о 'DLL01'<br />
ORDER BY prod_name,-