Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Билет1.docx
Скачиваний:
1
Добавлен:
01.07.2025
Размер:
365 Кб
Скачать
☆

Билет 19

  1. Опишите назначение ключевого слова WHERE оператора SELECT. Охарактеризуйте основные операторы, используемые при задании логического условия в предложении WHERE. Приведите примеры использования оператора SELECT с ключевым словом WHERE.

А Предложение WHERE определяет, какие строки указанных таблиц должны быть выбраны. Использование в операторе SELECT предложения, определяемого ключевым словом WHERE (где), позволяет задавать выражение условия, принимающее значение истина или ложь для некоторой строки таблицы. В таблицу, являющуюся результатом запроса, включаются только те строки, для которых условие, указанное в предложении WHERE, принимает значение истина.

В синтаксисе в предложении WHERE для отбора нужных строк таблицы можно использовать операторы сравнения = (равно), <> (не равно), <(меньше), <= (меньше или равно), > (больше), >=(больше или равно).

Также можно использовать несколько условий, соединенных логическими операторами:

AND - когда должны удовлетворяться оба разделяемых с помощью AND условия;

OR - когда должно удовлетворяться одно из разделяемых с помощью OR условий;

AND NOT - когда должно удовлетворяться первое условие и не должно второе;

OR NOT - когда или должно удовлетворяться первое условие или не должно удовлетворяться второе.

Например, запрос выдающий сведенья о студентах проживающих в г. Кобрине или Жабинка или Пинске:

SELECT *

FROM Студенты

WHERE Город=‘Кобрин’ OR Город=‘Жабинка’ OR Город=‘Пинск’;

При задании логического условия в предложении WHERE могут быть использованы операторы IN, BETWEEN, LIKE, IS NULL.

Оператор BETWEEN ... AND ... (находится в интервале от ... до ...) обеспечивает выборку строк, в которых значение какого-либо столбца находятся в заданном диапазоне. Оператор NOT BETWEEN … AND … наоборот обеспечивает выборку строк, значения которых находятся за пределами заданного диапазона. Первое значение в предложении c BETWEEN должно предшествовать второму в смысле алфавитной или числовой упорядоченности.

Например, выдать сведенья о картинах, стоимость которых находится в пределах от 80000 до 150000.

SELECT *

FROM Картины

WHERE Цена BETWEEN 80000 AND 150000;

В результате получим таблицу:

Наз_картины

Художник

Цена

Домовой

Зирок Д.Л.

84600

Закат

Литов Д.Е.

145900

Отражение

Катов Л.А.

118000

Оператор IN определяет принадлежность данного значения к некоторому множеству. Оператор NOT IN наоборот делает выборку значений, которые не принадлежат заданному множеству. Например, запрос выдающий сведенья о студентах проживающих в г. Кобрине или Жабинка или Пинске:

SELECT *

FROM Студенты

WHERE Город IN (‘Кобрин’, ‘Жабинка’, ‘Пинск’);

Оператор LIKE применим только к символьным полям, в которых требуется находить подстроки. Оператор NOT LIKE - обеспечивает выборку строк, поля которых не содержат указанную подстроку.

Для выборки строковых значений по заданному образцу подстроки можно применять шаблон искомого образца строки, использующий символы: • символ подчеркивания «_»заменяет один любой символ. Например, 'б_к' будет соответствовать словам 'бык', 'бок' или 'бак';

• знак процента «%»замещает последовательность любого числа символов. Например 'р%' будет соответствовать словам 'рак' или 'рубашка' и т.д.

Например, чтобы получить список книг, в названии которых есть подстрока «Delphi», надо записать

SELECT Код_книги, Название, Автор

FROM Книги

WHERE Название LIKE ‘%Delphi%’;

Если при загрузке данных не введено значение в какое-либо поле таблицы, то СУБД поместит в него NULL-значение. Обнаружить эти значения можно с помощью IS NULL. Оператор IS NOT NULL наоборот обеспечивает выборку только тех строк, поля которых имеют определенные значения данных.

Например, запрос, приведенный ниже, возвратит строки из таблицы Поставщики, в которых отсутствуют сведения в столбцах Адрес или Телефон:

SELECT *

FROM Поставщики

WHERE Адрес IS NULL OR Телефон IS NULL;