0% found this document useful (0 votes)
13 views5 pages

Excercise of NLHCSDL

(1)

Uploaded by

huyhoan18052005
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
13 views5 pages

Excercise of NLHCSDL

(1)

Uploaded by

huyhoan18052005
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 5

1.

Show full details of all suppliers:


SELECT *
FROM Supplier;

2. Show full details of all parts:


SELECT *
FROM Part;

3. Show full details of all suppliers in London:


SELECT *
FROM Supplier
WHERE City = 'London';

4. Show the part number (PNO), name and color of all parts located in
Paris:
SELECT PNO, PName, Color
FROM Part
WHERE City = 'Paris';

5. Show the part number and name of all parts that weigh more than 15:
SELECT PNO, PName
FROM Part
WHERE Weight > 15;

6. Parts weighing more than 15 and not red:


SELECT PNO, PName
FROM Part
WHERE Weight > 15 AND Color != 'Red';
7. Parts weighing more than 15 and neither red nor green:
SELECT PNO, PName
FROM Part
WHERE Weight > 15 AND Color NOT IN ('Red', 'Green');

8. Parts weighing between 15 and 19 (inclusive), ordered by name:


SELECT PNO, PName
FROM Part
WHERE Weight BETWEEN 15 AND 19
ORDER BY PName;

9. Parts shipped by supplier S1 (implicit join):


SELECT P.*
FROM Shipment S
JOIN Part P ON S.PNO = P.PNO
WHERE S.SNO = 'S1';
9. Parts shipped by supplier S1 (explicit join):
SELECT P.*
FROM Shipment S, Part P
WHERE S.PNO = P.PNO AND S.SNO = 'S1';

10. Suppliers who shipped part P1 (implicit join):


SELECT S.*
FROM Shipment S
JOIN Supplier S ON S.SNO = S.SNO
WHERE S.PNO = 'P1';
10. Suppliers who shipped part P1 (explicit join):
SELECT S.*
FROM Shipment S, Supplier S
WHERE S.SNO = S.SNO AND S.PNO = 'P1';

11. Suppliers in London who shipped parts in London:

SELECT S.*
FROM Supplier S
JOIN Shipment SH ON S.SNO = SH.SNO
JOIN Part P ON SH.PNO = P.PNO
WHERE S.City = 'London' AND P.City = 'London';

12. Parts shipped by supplier S1 using IN:


SELECT P.*
FROM Part P
WHERE P.PNO IN (SELECT PNO FROM Shipment WHERE SNO = 'S1');

13. Suppliers who shipped part P1 using IN:


SELECT S.*
FROM Supplier S
WHERE S.SNO IN (SELECT SNO FROM Shipment WHERE PNO = 'P1');

14. Parts shipped by supplier S1 using EXISTS:


SELECT P.*
FROM Part P
WHERE EXISTS (SELECT 1 FROM Shipment WHERE SNO = 'S1' AND PNO =
P.PNO);

15. Suppliers who shipped part P1 using EXISTS:


SELECT S.*
FROM Supplier S
WHERE EXISTS (SELECT 1 FROM Shipment WHERE PNO = 'P1' AND SNO =
S.SNO);

16. Suppliers in London who shipped parts in London (subquery


inside subquery, IN):
SELECT S.*
FROM Supplier S
WHERE S.City = 'London' AND S.SNO IN (
SELECT SNO
FROM Shipment SH
WHERE SH.PNO IN (
SELECT PNO
FROM Part P
WHERE P.City = 'London'
)
);

17. Suppliers in London who shipped parts in London (subquery


inside subquery, EXISTS):
SELECT S.*
FROM Supplier S
WHERE S.City = 'London' AND EXISTS (
SELECT 1
FROM Shipment SH
WHERE SH.SNO = S.SNO AND EXISTS (
SELECT 1
FROM Part P
WHERE P.PNO = SH.PNO AND P.City = 'London'
)
);
18. Suppliers who have never made a shipment (NOT IN):
SELECT S.*
FROM Supplier S
WHERE S.SNO NOT IN (SELECT SNO FROM Shipment);

19. Suppliers who have never made a shipment (NOT EXISTS):


SELECT S.*
FROM Supplier S
WHERE NOT EXISTS (SELECT 1 FROM Shipment WHERE SNO = S.SNO);

20. Suppliers who have never made a shipment (outer JOIN):


SELECT S.*
FROM Supplier S
LEFT OUTER JOIN Shipment SH ON S.SNO = SH.SNO
WHERE SH.SNO IS NULL;
20. Suppliers who have never made a shipment (outer JOIN):
SELECT S.*
FROM Supplier S
LEFT OUTER JOIN Shipment SH ON S.SNO = SH.SNO
WHERE SH.SNO IS NULL;

21. How many suppliers are there?


SELECT COUNT(*)
FROM Supplier;

22. How many suppliers are there in London?


SELECT COUNT(*)
FROM Supplier
WHERE City = 'London';

23. Show the maximum and minimum status values in the supplier
table:
SELECT MAX(Status), MIN(Status)
FROM Supplier;

24. Show the maximum and minimum status values in the supplier
table for London suppliers:
SELECT MAX(Status), MIN(Status)
FROM Supplier
WHERE City = 'London';
25. How many parts has each supplier shipped? Show the supplier
number (SNO) and total shipped only:
SELECT S.SNO, COUNT(*) AS TotalShipped
FROM Supplier S
JOIN Shipment SH ON S.SNO = SH.SNO
GROUP BY S.SNO;

You might also like