在SPJ数据库中,请为三建工程项目建立一个供应情况的视图,包括供应商代码 (SNO)、零件代码 (PNO)、 供应数量 (QTY)。 针对该视图 VSP 完成下列查询: (1) 找出三建工程项目使用的各种零件代码及其数量; (2) 找出供应商 S1的供应情况。
时间: 2023-06-14 17:04:24 浏览: 873
创建视图 VSP:
```
CREATE VIEW VSP AS
SELECT SNO, PNO, QTY
FROM SPJ
WHERE JNO = 'J3';
```
查询1:
```
SELECT PNO, SUM(QTY) AS Total_QTY
FROM VSP
GROUP BY PNO;
```
查询2:
```
SELECT PNO, QTY
FROM VSP
WHERE SNO = 'S1';
```
相关问题
SPJ数据库,包括S,P,J,SPJ四个关系模式: S( SNO,SNAME,STATUS,CITY); P(PNO,PNAME,COLOR,WEIGHT); J(JNO,JNAME,CITY); SPJ(SNO,PNO,JNO,QTY);有一个供应情况的视图,包括供应商代码SNO,零件代码pno,供应数量qty,对视图查询,找出三建工程使用的各种零件代码及其数量
根据题目描述可以得到三建工程的城市名称为"三建",因此可以使用如下SQL语句查询出对应的零件代码及其数量:
```
SELECT SPJ.PNO, SUM(SPJ.QTY) AS TOTAL_QTY
FROM SPJ
INNER JOIN J ON SPJ.JNO = J.JNO
WHERE J.CITY = '三建'
GROUP BY SPJ.PNO;
```
其中,使用INNER JOIN将SPJ和J两个关系模式连接起来,只查询满足J.CITY = '三建'条件的记录。然后,按照SPJ.PNO分组,使用SUM函数统计每个零件的总供应数量。最终结果会显示每个零件的代码和数量。
SPJ数据库,包括S,P,J,SPJ四个关系模式: S( SNO,SNAME,STATUS,CITY); P(PNO,PNAME,COLOR,WEIGHT); J(JNO,JNAME,CITY); SPJ(SNO,PNO,JNO,QTY);有一个供应情况的视图supply_view,括供应商代码SNO,零件代码pno,供应数量qty,对视图查询,找出三建工程使用的各种零件代码及其数量
可以使用以下 SQL 查询来获得三建工程使用的各种零件代码及其数量:
```
SELECT SPJ.PNO, SUM(SPJ.QTY) AS TOTAL_QTY
FROM SPJ
INNER JOIN J ON SPJ.JNO = J.JNO
WHERE J.JNAME = '三建工程'
GROUP BY SPJ.PNO;
```
该查询会从 `SPJ` 表中获取供应商、零件和项目的信息,并通过内连接将项目名称与项目代码匹配。然后,使用 `WHERE` 子句过滤出项目名称为 "三建工程" 的记录,并使用 `GROUP BY` 子句按零件代码进行分组。最后,使用 `SUM` 函数计算每个零件代码的总供应数量。
注意:该查询假定每个零件在一个项目中只有一个供应商。如果一个零件在多个项目中有不同的供应商,则该查询结果可能不准确。
阅读全文