Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
БД Лекция 7 Структурированный язык запросов SQL...docx
Скачиваний:
1
Добавлен:
01.07.2025
Размер:
34 Кб
Скачать
☆
  • SELECT Фамилия, Имя, Отчество, Телефон

  • FROM Клиенты

  • WHERE Телефон LIKE '(816))25-61 _'

  • Оператор exists

  • Оператор EXISTS используется для отбора записей, соответствующих заданному критерию.

Пример: Из таблицы «Товары требуется отобрать список товаров, количество продаж которых превышает 10. Сведения о продажах содержатся в таблице «Продажи» в поле «Продано». Для получения необходимой выборки воспользуемся оператором EXISTS:

  • SELECT Наименование, Цена

  • FROM Товары

  • WHERE EXISTS (SELECT [Код товара]

  • FROM Продажи

  • WHERE (Продажи.Продано>10) AND

  • Товары. [Код товара] =Продажи. [Код товара])

В этом запросе после ключевого слова EXISTS следует оператор SELECT, отбирающий из таблицы «Продажи» записи, для которых количество продаж превышает 10.

Оператор EXISTS отбирает из таблицы «Товары записи, в которых значение поля «Код товара» соответствует отобранным из таблицы «Продажи»

Оператор UNIQUE

Оператор UNIQUE используется для проверки записи таблицы на уникальность. По своему действию он аналогичен оператору EXISTS. Единственное отличие заключается в том, что подзапрос, задаваемый после ключевого слова UNIQUE, не должен возвращать более одной записи.

Оператор ALL

Оператор ALL используется для сравнения исходного значения со всеми другими значениями, входящими в некоторый набор данных.

Например, для того чтобы выбрать из таблицы «Товары» те товары, которые имеют цену большую, чем цена всех (каждого, любого из) товаров, проданных в количестве более 10, используется следующий запрос

  • SELECT *

  • FROM Товары

  • WHERE Цена> ALL (SELECT Продажи.Цена

  • FROM Продажи

  • WHERE Продажи.Продано>10)

Оператор ANY

  • Оператор ANY применяется для сравнения заданного значения с каждым из значений некоторого набора данных. Если в предыдущем примере заменить оператор ALL на ANY, то будет возвращен список товаров, цена которых больше, чем хотя бы у одного из товаров, проданных в количестве больше 10.

Операторы объединения

В SQL определены два таких оператора:

  • Оператор AND используется в тех случаях, когда необходимо отобрать записи, соответствующие нескольким условиям. Причем для каждой записи, включаемой в результат выборки, должны выполняться все заданные ограничения. Оператор AND объединяет несколько условий путем выполнения операции логического умножения результатов всех заданных ограничений..

  • Оператор OR выполняет операцию логического сложения результатов всех заданных условий. При использовании данного оператора запись включается в результирующею выборку в случае выполнения хотя бы одного из заданных ограничений

При использовании операторов объединения каждое логическое выражение следует заключать в круглые скобки. Для примера произведем выборку данных о товарах цена которых больше 50, но меньше 100

  • SELECT *

  • FROM Товары

  • WHERE (Цена>50) AND (Цена<100)

Синтаксические правила использования оператор OR такие же, как и для оператора AND.

Оператор отрицания

Для каждого из рассматриваемых операторов может быть выполнена операция отрицания, меняющая результат выполнения оператора на противоположный. Для реализации этой операции используется оператор NOT. Ниже приведены примеры использования этого оператора с логическими операторами

  • IS NOT NULL,

  • NOT BETWEEN…AND,

  • NOT IN,

  • NOT LIKE,

  • NOT EXISTS,

  • NOT UNIQUE

8