Методическое пособие к лабораторным работам по курсу «База данных» Ташкент 2022
SELECT ИМЕНА_СТОЛБЦОВ (1..N) FROM
Download 3.25 Mb.
|
Базы данных Методическое пособие БД 2023-24 уч год 15 Пр работ
SELECT ИМЕНА_СТОЛБЦОВ (1..N)
FROM ИМЯ_ТАБЛИЦЫ INTERSECT SELECT ИМЕНА_СТОЛБЦОВ (1..N) FROM ИМЯ_ТАБЛИЦЫ Оператор EXCEPT имеет следующий синтаксис: SELECT ИМЕНА_СТОЛБЦОВ (1..N) FROM ИМЯ_ТАБЛИЦЫ EXCEPT SELECT ИМЕНА_СТОЛБЦОВ (1..N) FROM ИМЯ_ТАБЛИЦЫ В этой конструкции единичные запросы могут иметь условия в секции WHERE, а могут не иметь их. При помощи операторов INTERSECT и EXCEPT можно производить операции с запросами как к одной таблице, так и к разным. В примерах работаем с базой данных сети магазинов и таблицами SOLNYSHKO и VETEROK, содержащими данные о продуктах, которые имеются в магазинах с соответствующими названиями. Таблица SOLNYSHKO:
Таблица VETEROK:
Пересечением множеств A и B называется множество, состоящее из всех тех или только тех элементов, которые принадлежат каждому из множеств A и B. Больше об операциях над множествами как над математическими объектами можно узнать из урока Множества и операции над множествами. Пересечениями множеств могут служить носители одних и тех же имен в двух студенческих группах, овощи одних и тех же наименований в двух корзинах и другие. Пересечением множеств является, наконец, набор товаров, которые имеются и в одном, и в другом магазинах. Пример 1. Вывести список продуктов, которые имеются и в магазине Solnyshko, и в магазине Veterok. Пишем следующий запрос с использованием оператора SQL INTERSECT: SELECT ProdName FROM Solnyshko INTERSECT SELECT ProdName FROM Veterok Результатом выполнения запроса будет следующая таблица:
Во многих диалектах SQL, например, MySQL, оператор INTERSECT отсутствует. Но реализация операции пересечения множеств возможна другими способами. Наиболее простой способ связан с использованием предиката EXISTS. В качестве альтернативы им можно пользоваться и в MS SQL Server. Пример 2. Вывести список продуктов, которые имеются и в мазазине Solnyshko, и в магазине Veterok. Пишем следующий запрос: SELECT ProdName FROM Solnyshko AS name_soln WHERE EXISTS (SELECT ProdName FROM VETEROK WHERE ProdName=name_soln.ProdName) Результатом выполнения запроса будет та же таблица, что и в примере 1:
Разностью множеств A и B называется множество состоящее из всех тех и только тех элементов множества A, которые не являются элементами множества B. В частности, такое множество может состоять из продуктов, которые имеются в одном из магазинов, но отсутствуют в другом магазине. Пример 3. Вывести список продуктов, которые имеются в магазине Solnyshko, и отсутствуют в магазине Veterok. Пишем следующий запрос с использованием оператора EXCEPT: Download 3.25 Mb. Do'stlaringiz bilan baham: |
Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling
ma'muriyatiga murojaat qiling