(8)查询使用零件P1总数量超过300的所有工程的工程号和工程名(两种方法:连接,嵌套)
时间: 2023-08-31 22:23:25 浏览: 33
### 回答1:
连接方法:
```
SELECT E.工程号, E.工程名
FROM 工程 E
INNER JOIN (SELECT 工程号, SUM(数量) AS 总数量
FROM 使用
WHERE 零件号 = 'P1'
GROUP BY 工程号
HAVING SUM(数量) > 300) U
ON E.工程号 = U.工程号;
```
嵌套方法:
```
SELECT 工程号, 工程名
FROM 工程
WHERE 工程号 IN (SELECT 工程号
FROM 使用
WHERE 零件号 = 'P1'
GROUP BY 工程号
HAVING SUM(数量) > 300);
```
### 回答2:
方法一:连接查询
SELECT E.工程号, E.工程名
FROM 工程表 E INNER JOIN 零件表 P
ON E.工程号 = P.工程号
WHERE P.零件号 = 'P1' AND P.数量 > 300;
方法二:嵌套查询
SELECT E.工程号, E.工程名
FROM 工程表 E
WHERE E.工程号 IN
(SELECT P.工程号
FROM 零件表 P
WHERE P.零件号 = 'P1' AND P.数量 > 300);
### 回答3:
连接查询方法:
SELECT 工程.工程号, 工程.工程名
FROM 工程
JOIN 供应
ON 工程.工程号 = 供应.工程号
JOIN 零件
ON 供应.零件号 = 零件.零件号
WHERE 零件.零件名 = 'P1' AND 零件.数量 > 300
嵌套查询方法:
SELECT 工程号, 工程名
FROM 工程
WHERE 工程号 IN (
SELECT 工程号
FROM 供应
WHERE 零件号 IN (
SELECT 零件号
FROM 零件
WHERE 零件名 = 'P1' AND 数量 > 300
)
)