Оператор IN
Оператор BETWEEN
Раздел WHERE
С помощью раздела WHERE можно сузить набор строк, включаемых в результат выборки. Для этого указывается логическое условие, от которого зависит, будет ли строка включена в выборку по запросу, или нет. Строка включается в результат выборки, только если логическое выражение возвращает значение TRUE.
В общем случае логическое выражение содержит имена столбцов таблиц, с которыми работает запрос. При необходимости можно указать более одного логического выражения, объединив их с помощью логических операторов OR и AND.
Например:
SELECT Фамилия, Имя, Отчество, Номер_группы, Год_поступления
FROM Студенты
WHERE Год_поступления < 2000
В результате будет возвращен список всех студентов, поступивших в учебное заведение ранее 2000 года.
При формировании условия отбора могут быть использованы дополнительные логические операторы. Рассмотрим некоторые из них.
С помощью этого оператора можно определить, лежит ли значение указанной величины в заданном диапазоне.
Пример:
SELECT Наименование, Семестр, Количество_часов
FROM Учебный_план INNER JOIN Дисциплины ON
Учебный_план. ID_Дисциплина = Дисциплины.ID_Дисциплина
WHERE Количество_часов BETWEEN 50 AND 100
В результате выполнения запроса получим список дисциплин учебного плана с количеством часов от 50 до 100.
Позволяет задать в условии отбора множество возможных значений для проверяемой величины.
Пример:
SELECT Наименование, Семестр, Количество_часов
FROM Учебный_план INNER JOIN Дисциплины ON
Учебный_план. ID_Дисциплина = Дисциплины.ID_Дисциплина
WHERE Наименование IN (‘Английский язык’, ’Физическая культура’)
В результате получим строки учебного плана для дисциплин “Английский язык”, “Физическая культура”.
Выполняет сравнение выражения символьного типа с заданным шаблоном. Шаблон может содержать символы-разделители.
Символы-разделители | Значение |
% | Может быть заменен в символьном выражении любым количеством произвольных символов. Например, образец ‘%кош%’позволяет отобрать слова: кошка, окошко, лукошко и т.п. |
_ | Может быть заменен в символьном выражении любым, но только одним символом. Например образец ‘программ_’ позволяет отобрать слова: порграмма, программ, программы, но не программист или программой. |
[ABC-9] | Может быть заменен в символьном выражении любым, но только одним символом из указанного в квадратных скобках. Дефис используется для указания диапазона. Например, образец любой последовательности символов, начинающийся с буквы латинского алфавита, может быть задан следующим образом:’[A-Z]%’ |
[^ABC-9] | Может быть заменен в символьном выражении только одним символом, кроме тех, что указанны в квадратных скобках. Дефис используется для указания диапазона. Например, образец любой последовательности символов, которая не должна заканчиваться цифрой, может быть задан следующим образом:’ % [^0-9]’ |
Пример:
SELECT Фамилия, Имя, Отчество, Должность
FROM Кадровый состав
WHERE Должность LIKE ‘%пр%’
В данном случае будут отобраны все строки со значениями “Ст. преп.” И “Проф”.