46 lines
1.3 KiB
Plaintext
46 lines
1.3 KiB
Plaintext
|
/* What are the suppliers that supply all parts using NOT EXISTS */
|
||
|
/* sp difference A */
|
||
|
select DISTINCT snumber
|
||
|
from spj as c
|
||
|
where not EXISTS
|
||
|
/* A */
|
||
|
/* Cross Product */
|
||
|
(select DISTINCT b.snumber
|
||
|
from part as a cross join spj as b
|
||
|
where c.snumber = b.snumber and not EXISTS
|
||
|
/* difference cross product sp */
|
||
|
(select snumber, pnumber from spj
|
||
|
where b.snumber = spj.snumber and a.pnumber = spj.pnumber));
|
||
|
|
||
|
|
||
|
/* What are the suppliers that supply all parts using NOT EXISTS * */
|
||
|
/* sp difference A */
|
||
|
select DISTINCT snumber
|
||
|
from spj as c
|
||
|
where not EXISTS
|
||
|
/* A */
|
||
|
/* Cross Product */
|
||
|
(select *
|
||
|
from part as a cross join spj as b
|
||
|
where c.snumber = b.snumber and not EXISTS
|
||
|
/* difference cross product sp */
|
||
|
(select * from spj
|
||
|
where b.snumber = spj.snumber and a.pnumber = spj.pnumber));
|
||
|
|
||
|
|
||
|
/* What are the suppliers that supply all parts using NOT EXISTS *, list their names and their cities */
|
||
|
select snumber, sname, city from supplier
|
||
|
WHERE snumber in
|
||
|
(/* sp difference A */
|
||
|
select DISTINCT snumber
|
||
|
from spj as c
|
||
|
where not EXISTS
|
||
|
/* A */
|
||
|
/* Cross Product */
|
||
|
(select *
|
||
|
from part as a cross join spj as b
|
||
|
where c.snumber = b.snumber and not EXISTS
|
||
|
/* difference cross product sp */
|
||
|
(select * from spj
|
||
|
where b.snumber = spj.snumber and a.pnumber = spj.pnumber)));
|