Дейт К. Д27 Руководство по реляционной субд db2/ Пер с англ и предисл. М. Р. Когаловского




НазваниеДейт К. Д27 Руководство по реляционной субд db2/ Пер с англ и предисл. М. Р. Когаловского
страница24/86
Дата16.10.2012
Размер4.21 Mb.
ТипРуководство
1   ...   20   21   22   23   24   25   26   27   ...   86

УПРАЖНЕНИЯ



Как и в предыдущей главе. Все следующие упражнения основаны на базе данных поставщиков-деталей-изделий (см. упражнения в главе 3). В каждом из них требуется записать предложение SELECT для указанного запроса, за исключением упражнений 15—18 и 26. Для удобства повторим здесь структуру рассматриваемой базы данных:

S (НОМЕР_ПОСТАВЩИКА, ФАМИЛИЯ, СОСТОЯНИЕ, ГОРОД)

Р (НОМЕР_ДЕТАЛИ, НАЗВАНИЕ, ЦВЕТ, ВЕС, ГОРОД)

J (НОМЕР_ИЗДЕЛИЯ, НАЗВАНИЕ, ГОРОД)

SPJ (НОМЕР_ПОСТАВЩИКА, НОМЕР_ДЕТАЛИ, НОМЕР_ИЗДЕЛИЯ,

КОЛИЧЕСТВО)

В каждом разделе упражнения упорядочены приблизительно в порядке возрастания их сложности. Необходимо попытаться выполнить по крайней мере некоторые из легких упражнений в каждой группе. Упражнения 12—18 являются весьма трудными.


Подзапросы

5.1. Выдать названия изделий, для которых поставляются детали поставщиком S1.

5.2. Выдать цвета деталей, поставляемых поставщиком S1.

5.3. Выдать номера деталей, поставляемых для какого-либо изделия в Лондоне.

5.4. Выдать номера изделий, использующих по крайней мере одну деталь, поставляемую поставщиком S1.

5.5. Выдать номера поставщиков, поставляющих по крайней мере одну деталь, поставляемую по крайней мере одним поставщиком, который поставляет по крайней мере одну красную деталь.

5.6. Выдать номера поставщиков, имеющих состояние меньшее, чем у поставщика S1.

5.7. Выдать номера поставщиков, поставляющих детали для какого-либо изделия с деталью Р1 в количестве, большем, чем средний объем поставок детали Р1 для этого изделия. Примечание. В этом упражнении нужно использовать стандартную функцию AVG.


Квантор EXISTS

5.8. Повторите упражнение 5.3 и используйте в Вашем решении EXISTS.

5.9. Повторите упражнение 5.4 и используйте в Вашем решении EXISTS.

5.10. Выдать номера изделий, для которых не поставляет какой-либо красной детали поставщик из Лондона.

5.11. Выдать номера изделий, для которых детали полностью поставляет поставщик S1.

5.12. Выдать номера деталей, поставляемых для всех изделий в Лондон.

5.13. Выдать номера поставщиков, поставляющих одну и ту же деталь для всех изделий.

5.14. Выдать номера изделий, для которых поставляются по крайней мере все детали, имеющиеся у поставщика S1.

Для следующих четырех упражнений (5.15—5.18) преобразуйте приведенное предложение SELECT языка SQL обратно в его эквивалент на естественном языке.

5.15. SELECT DISTINCT НОМЕР_ИЗДЕЛИЯ

FROM SPJ SPJX

WHERE NOT EXISTS

(SELECT *

FROM SPJ SPJY

WHERE SPJY.НОМЕР_ИЗДЕЛИЯ=SPJX. НОМЕР_

ИЗДЕЛИЯ

AND NOT EXISTS

(SELECT *

FROM SPJ SPJZ

WHERE SPJZ. НОМЕР_ДЕТАЛИ = SPJY.

НОМЕР—ДЕТАЛИ

AND SPJZ.НОМЕР_ПОСТАВЩИКА='

S1'));

5.16. DISTINCT НОМЕР_ИЗДЕЛИЯ

FROM SPJ SPJX

WHERE NOT EXISTS

(SELECT *

FROM SPJ SPJY

WHERE EXISTS

(SELECT *

FROM SPJ SPJX

WHERE SPJ А. НОМЕР_ПОСТАВЩИКА = 'S1'

AND SPJ А. НОМЕР_ДЕТАЛИ = SPJY.

НОМЕР_ДЕТАЛИ)

AND NOT EXISTS

(SELECT *

FROM SPJ SPJB

WHERE SPJB. НОМЕР_ПОСТАВЩИКА='S1'

AND SPJB. НОМЕР_ДETAЛИ=SPJY.НОМЕР_ДЕТАЛИ

AND SPJB.НОМЕР_ИЗДEЛИЯ=

SPJX..НОМЕР_ИЗДЕЛИЯ));

5.17. SELECT DISTINCT НОМЕР_ИЗДЕЛИЯ

FROM SPJ SPJX

WHERE NOT EXISTS

(SELECT *

FROM SPJ SPJY

WHERE EXISTS

(SELECT *

FROM SPJ SPJA

WHERE SPJA. НОМЕР_ДЕТАЛИ = SPJY.

НОМЕР_ДЕТАЛИ

AND SPJA. НОМЕР_ИЗДЕЛИЯ = SPJX.

НОМЕР_ИЗДЕЛИЯ)

AND NOT EXISTS

(SELECT *

FROM SPJ SPJB

WHERE SPJB. НОМЕР_ПОСТАВЩИКА= 'S1'

AND SPJB. НОМЕР_ДЕТАЛИ = SPJY.

НОМЕР_ДЕТАЛИ

AND SPJB.НОМЕР_ИЗДЕЛИЯ=SPJX.

НОМЕР_ИЗДЕЛИЯ));

5.18. SELECT DISTINCT НОМЕР_ИЗДЕЛИЯ

FROM SPJ SPJX

WHERE NOT EXISTS

(SELECT *

FROM SPJ SPJY

WHERE EXISTS

(SELECT *

FROM SPJ SPJA

WHERE SPJA. НОМЕР_ПОСТАВЩИКА =

SPJY. НОМЕР_ПОСТАВЩИКА

AND SPJA. НОМЕР_ДЕТАЛИ IN

(SELECT НОМЕР_ДЕТАЛИ

FROM P

WHERE ЦВЕТ = 'Красный')

AND NOT EXISTS

(SELECT *

FROM SPJ SPJB

WHERE SPJB. НОМЕР_ПОСТАВЩИКА =

SPJY. НОМЕР_ПОСТАВЩИКА

AND SPJB. НОМЕР_ИЗДЕЛИЯ =

SPJX. НОМЕР_ИЗДЕЛИЯ)));


Стандартные функции

5.19. Выдать общее число изделий, для которых поставляет детали поставщик S1.

5.20. Выдать общее количество деталей Р1, поставляемых поставщиком S1.

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

5.22. Выдать номера изделий, для которых город является первым в алфавитном списке таких городов.

5.23. Выдать номера изделий, для которых средний объем поставки деталей Р1 больше наибольшего объема поставки любой детали для изделия J 1.

5.24. Выдать номера поставщиков, поставляющих деталь Р1 для какого-либо изделия в количестве, большем среднего объема поставок детали Р1 для этого изделия.


Объединение

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

5.26. Приведите результат следующего предложения SELECT:

SELECT P.ЦВЕТ

FROM P

UNION

SELECT P. ЦВЕТ

FROM P;

1   ...   20   21   22   23   24   25   26   27   ...   86

Похожие:

Дейт К. Д27 Руководство по реляционной субд db2/ Пер с англ и предисл. М. Р. Когаловского iconДейт К. Руководство по реляционной субд db2 / Пер с англ и предисл. М. Р. Когаловского
База данных предназначена для хранения данных о приобретенных библиотекой изданиях (монографиях, справочниках, сборниках статей и...
Дейт К. Д27 Руководство по реляционной субд db2/ Пер с англ и предисл. М. Р. Когаловского iconДейт К. Дж. Руководство по реляционной субд db2
Кен Хендерсон, Профессиональное руководство по Microsoft sql server: структура и реализация
Дейт К. Д27 Руководство по реляционной субд db2/ Пер с англ и предисл. М. Р. Когаловского iconРич Р. К. Политология. Методы исследования: Пер с англ. / Предисл. А. К. Соколова
Мангейм Дж. Б., Рич Р. К. Политология. Методы исследования: Пер с англ. / Предисл. А. К. Соколова. – М.: Издательство “Весь Мир”,...
Дейт К. Д27 Руководство по реляционной субд db2/ Пер с англ и предисл. М. Р. Когаловского iconРич Р. К. Политология. Методы исследования: Пер с англ. / Предисл. А. К. Соколова
Мангейм Дж. Б., Рич Р. К. Политология. Методы исследования: Пер с англ. / Предисл. А. К. Соколова. – М.: Издательство “Весь Мир”,...
Дейт К. Д27 Руководство по реляционной субд db2/ Пер с англ и предисл. М. Р. Когаловского iconРич Р. К. Политология. Методы исследования: Пер с англ. / Предисл. А. К. Соколова
Мангейм Дж. Б., Рич Р. К. Политология. Методы исследования: Пер с англ. / Предисл. А. К. Соколова. – М.: Издательство “Весь Мир”,...
Дейт К. Д27 Руководство по реляционной субд db2/ Пер с англ и предисл. М. Р. Когаловского iconРич Р. К. Политология. Методы исследования: Пер с англ. / Предисл. А. К. Соколова
Мангейм Дж. Б., Рич Р. К. Политология. Методы исследования: Пер с англ. / Предисл. А. К. Соколова. – М.: Издательство “Весь Мир”,...
Дейт К. Д27 Руководство по реляционной субд db2/ Пер с англ и предисл. М. Р. Когаловского icon«Теория экономических информационных систем»
Реализация запросов к реляционной бд средствами реляционной алгебры и конкретной субд 12
Дейт К. Д27 Руководство по реляционной субд db2/ Пер с англ и предисл. М. Р. Когаловского iconПоддержка стандарта Opengis в субд линтер. Перспективы обработки гис-информации ядром субд
Поддержка пространственных (геометрических) типов данных в реляционной субд включает в себя следующие моменты
Дейт К. Д27 Руководство по реляционной субд db2/ Пер с англ и предисл. М. Р. Когаловского iconОбщая характеристика субд
Архитектуры субд: центра­ли­зованная, файл-сервер, клиент-сервер, тонкий клиент – сервер приложений – сервер базы данных. Oltp и...
Дейт К. Д27 Руководство по реляционной субд db2/ Пер с англ и предисл. М. Р. Когаловского iconЛитература Дейт К. Введение в системы баз данных: пер с англ. К.; М.; Спб., Издательский дом “Вильямс”, 2000
Архитектура систем бд. Особенности иерархических, сетевых, реляционных и объектных бд. Технология клиент сервер
Разместите кнопку на своём сайте:
Библиотека


База данных защищена авторским правом ©lib.znate.ru 2014
обратиться к администрации
Библиотека
Главная страница