數據庫實驗 嵌套與集合查詢


數據庫實驗 嵌套與集合查詢

針對供應管理數據庫SPJ,進行各種嵌套與集合查詢:

代碼倉庫:https://github.com/SKPrimin/HomeWork/tree/main/SQLSever/嵌套與集合查詢

(1)查詢使用了“S001”供應商供應的零件的工程項目信息;
SELECT
	* 
FROM
	J168 
WHERE
	JNO IN ( SELECT JNO FROM SPJ168 WHERE SNO = 'S001' ) 
image-20210529122734637
(2)查詢供應零件“螺絲刀”的供應商信息;
SELECT
	* 
FROM
	S168 
WHERE
	SNO IN ( SELECT SNO FROM SPJ168 WHERE PNO IN ( SELECT PNO FROM P168 WHERE PNAME = '螺絲刀' ) )
image-20210529122848545
(3)查詢供應商“北京新天地”的所有客戶(工程項目)的信息;
SELECT
	* 
FROM
	J168 
WHERE
	JNO IN ( SELECT JNO FROM SPJ168 WHERE SNO IN ( SELECT SNO FROM S168 WHERE SNAME = '北京新天地' ) )
image-20210529122930923
(4)查詢供應了“J003”工程“P002”零件的供應商信息;
SELECT
	* 
FROM
	S168 
WHERE
	SNO IN ( SELECT SNO FROM SPJ168 WHERE JNO = 'J003' AND PNO = 'P002' )
image-20210529123005596
(5)查詢使用了“天津”供應商供應的“紅色”零件的工程項目信息;
SELECT
	* 
FROM
	J168 
WHERE
	JNO IN (
	SELECT
		JNO 
	FROM
		SPJ168 
	WHERE
		SNO IN ( SELECT SNO FROM S168 WHERE CITY = '天津' ) 
		AND PNO IN ( SELECT PNO FROM P168 WHERE COLOR = '紅色' ) 
	)
image-20210529123026897
(6)查詢沒有使用“天津”供應商供應的“紅色”零件的工程項目信息;
SELECT
	* 
FROM
	J168 
WHERE
	JNO IN (
	SELECT
		JNO 
	FROM
		SPJ168 
	WHERE
		PNO != ALL (
		SELECT
			PNO 
		FROM
			P168 
		WHERE
			COLOR = '紅色' 
			AND PNO IN ( SELECT PNO FROM SPJ168 WHERE SNO IN ( SELECT SNO FROM S168 WHERE CITY = '天津' ) ) 
		) 
	)
image-20210529123051778
(7)查詢使用了“S002”供應的“螺母”零件的工程信息;
SELECT
	* 
FROM
	J168 
WHERE
	JNO IN ( SELECT JNO FROM SPJ168 WHERE PNO IN ( SELECT PNO FROM P168 WHERE PNAME = '螺  母' ) AND SNO = 'S002' )
image-20210529123112535
(8)查詢使用了 “螺母”零件的工程信息及相應供應商信息;
SELECT
	J168.JNO,
	JNAME,
	J168.CITY,
	S168.SNO,
	SNAME,
	S168.CITY,
	STAT 	
FROM
	J168,S168,SPJ168,P168
WHERE
	SPJ168.SNO = S168.SNO	AND SPJ168.JNO = J168.JNO AND SPJ168.PNO = P168.PNO AND PNAME = '螺  母' 
image-20210529152803979
(9)查詢給“長春一汽”項目供應零件的供應商信息和供應情況;
SELECT
	S168.SNO,
	SNAME,
	S168.CITY,
	P168.PNO,
	PNAME,
	COLOR,
	WT 
FROM
	S168,	SPJ168,	J168,	P168 
WHERE
	SPJ168.SNO = S168.SNO 
	AND SPJ168.JNO = J168.JNO 
	AND SPJ168.PNO = P168.PNO 
	AND JNAME = '長春一汽'
image-20210529152828541
(10)查詢給“長春一汽”項目供應“螺母”零件最多的供應商信息和供應情況;
SELECT
	S168.SNO,
	SNAME,
	S168.CITY,
	P168.PNO,
	PNAME,
	COLOR,
	WT 
FROM
	S168,
	SPJ168,
	J168,
	P168 
WHERE
	SPJ168.SNO = S168.SNO 
	AND SPJ168.JNO = J168.JNO 
	AND SPJ168.PNO = P168.PNO 
	AND JNAME = '長春一汽' 
	AND WT IN ( SELECT MAX ( WT ) FROM P168 WHERE PNAME = '螺  母' )
image-20210529152855223
(11)查詢使用了“螺母”或“螺絲刀”零件的工程項目信息;
SELECT
	* 
FROM
	J168 
WHERE
	JNO IN ( SELECT JNO FROM SPJ168 WHERE PNO IN 
	( SELECT PNO FROM P168 WHERE PNAME = '螺  母' 
	UNION SELECT PNO FROM P168 WHERE PNAME = '螺絲刀' ) )
image-20210529152932732
(12)查詢既使用了“螺母”又使用了“螺絲刀”零件的工程項目信息;
SELECT
	* 
FROM
	J168 
WHERE
	JNO IN ( SELECT JNO FROM SPJ168 WHERE PNO IN 
	( SELECT PNO FROM P168 WHERE PNAME = '螺  母' 
	INTERSECT SELECT PNO FROM P168 WHERE PNAME = '螺絲刀' ) )
image-20210529153002803
(13)查詢使用了“螺母”零件但沒有使用“螺絲刀”零件的工程項目信息;
SELECT
	* 
FROM
	J168 
WHERE
	JNO IN ( SELECT JNO FROM SPJ168 WHERE PNO IN ( SELECT PNO FROM P168 WHERE PNAME = '螺  母' EXCEPT SELECT PNO FROM P168 WHERE PNAME = '螺絲刀' ) )
image-20210529153025922
(14)查詢使用過所有供應商供應的零件的工程項目信息。 不存在任何零件沒使用
SELECT
	* 
FROM
	J168 
WHERE
	NOT EXISTS (
	SELECT
		* 
	FROM
		P168 
	WHERE
		NOT EXISTS ( SELECT * FROM SPJ168 WHERE SPJ168.PNO = P168.PNO AND SPJ168.JNO = J168.JNO ) 
	)
image-20210529153102697


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM