0% found this document useful (0 votes)
10 views2 pages

Baitap T9

The document contains 6 SQL queries that select data from various tables related to employees and assignments. The queries use joins, aggregation, comparisons and other SQL clauses to retrieve specific records based on certain conditions.

Uploaded by

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

Baitap T9

The document contains 6 SQL queries that select data from various tables related to employees and assignments. The queries use joins, aggregation, comparisons and other SQL clauses to retrieve specific records based on certain conditions.

Uploaded by

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

-- 1

SELECT nv.MANV, concat(NV.HONV," ",NV.TENLOT," ",NV.TENNV) AS HOTEN


FROM nhanvien NV
WHERE NOT EXISTS(SELECT *
FROM DEAN D , phongban PB
WHERE D.PHONG = PB.MAPHG
AND PB.TENPHG LIKE "Nghiên cứu"
AND D.MADA NOT IN(SELECT P.MADA
FROM phancong P
WHERE P.MADA = D.MADA
AND P.MA_NVIEN = NV.MANV
)
);

SELECT nv.MANV, concat(NV.HONV," ",NV.TENLOT," ",NV.TENNV) AS HOTEN


FROM nhanvien NV
WHERE NOT EXISTS(SELECT *
FROM DEAN D , phongban PB
WHERE D.PHONG = PB.MAPHG
AND PB.TENPHG LIKE "Nghiên cứu"
AND NOT EXISTS(SELECT *
FROM phancong P
WHERE P.MADA = D.MADA
AND P.MA_NVIEN = NV.MANV
)
);

SELECT nv.MANV, concat(NV.HONV," ",NV.TENLOT," ",NV.TENNV) AS HOTEN


FROM NHANVIEN NV
WHERE NV.MANV IN(SELECT PC.MA_NVIEN
FROM phancong PC, DEAN D, phongban P
WHERE PC.MADA = D.MADA
AND D.PHONG = P.MAPHG
AND P.TENPHG LIKE "Nghiên cứu"
GROUP BY PC.MA_NVIEN
HAVING COUNT(DISTINCT PC.MADA) = (SELECT COUNT(DEAN.MADA)
FROM DEAN, PHONGBAN
WHERE PHONGBAN.MAPHG = DEAN.PHONG
AND PHONGBAN.TENPHG LIKE "Nghiên
cứu")
);

-- 2
SELECT nv.MANV, concat(NV.HONV," ",NV.TENLOT," ",NV.TENNV) AS HOTEN
FROM nhanvien NV
WHERE NOT EXISTS(SELECT *
FROM DEAN D
WHERE D.PHONG = 4
AND NOT EXISTS(SELECT *
FROM phancong P
WHERE P.MADA = D.MADA
AND P.MA_NVIEN = NV.MANV
)
);

-- 3
SELECT NV.MANV, CONCAT(NV.HONV," ",NV.TENLOT," ",NV.TENNV) AS HOTEN
FROM nhanvien NV
WHERE NOT EXISTS(SELECT *
FROM phancong PC LEFT JOIN nhanvien N
ON PC.MA_NVIEN = N.MANV
WHERE N.HONV LIKE "Đinh"
AND N.TENLOT LIKE "Bá"
AND N.TENNV LIKE "Tiên"
AND NOT EXISTS(SELECT *
FROM phancong P
WHERE P.MADA = PC.MADA
AND P.STT = PC.STT
AND P.MA_NVIEN = NV.MANV)
);

-- 4
SELECT NV.MANV, CONCAT(NV.HONV," ",NV.TENLOT," ",NV.TENNV) AS HOTEN
FROM nhanvien NV
WHERE NOT EXISTS(SELECT *
FROM dean D LEFT JOIN congviec CV
ON D.MADA = CV.MADA
LEFT JOIN phancong PC
ON PC.MADA = CV.MADA AND PC.STT = CV.STT
WHERE D.TENDA LIKE "San pham X"
AND NOT EXISTS(SELECT *
FROM phancong P
WHERE P.MADA = PC.MADA
AND P.STT = PC.STT
AND P.MA_NVIEN = NV.MANV)
);

-- 5
SELECT NV.MANV, CONCAT(NV.HONV," ",NV.TENLOT," ",NV.TENNV) AS HOTEN
FROM nhanvien NV
WHERE NOT EXISTS(SELECT *
FROM dean D LEFT JOIN phancong PC
ON D.MADA = PC.MADA
WHERE D.DDIEM_DA LIKE "TP HCM"
AND NOT EXISTS(SELECT *
FROM phancong P
WHERE P.MADA = PC.MADA
AND P.STT = PC.STT
AND P.MA_NVIEN = NV.MANV)
);

-- 6
SELECT PB.TENPHG, PB.MAPHG
FROM phongban PB
WHERE NOT EXISTS(SELECT *
FROM dean D LEFT JOIN phancong PC
ON D.MADA = PC.MADA
WHERE D.DDIEM_DA LIKE "TP HCM"
AND NOT EXISTS(SELECT *
FROM phongban P
WHERE P.MAPHG = D.PHONG
AND P.TRPHG = PB.TRPHG)
);

You might also like