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. НОМЕР_ИЗДЕЛИЯ)));