已经关系表如下: 项目(项目号,项目名,项目责任人,电话)。 零件(零件号,零件名称,规格,单价,描述)。 供应(项目号,零件号,数量,日期》。 请用SQL语句完成下列题目:。 (1)查询零件号为P20的规格及单价。 (10分) (2)查询供应数量大于2000的项目名和零件名称。(10分)。 (3)统计每个项目负责人所负责的项目数。(10分)。 (4)查询零件名称中含有“PT-”的零件有多少个。(10分) (5)查询“刘强”所负责的项目使用的零件名称及数量。 (10分) (6)查询没有使用规格为“C型”零件的项目名称。 (10分), (7)把零件号为P22的零件单价增加1.5元。 (10分) (8)删除零件名称为“杯头螺丝”的所有供应信息。(10分) (9)创建供应表,定义其中的主码,外码,规定数量大于0。(10分)。 (10)创建关于“松柏”项目的视图。视图信息中包括该项目使用的零件名,规格,单价,数量。(10分)。
时间: 2024-02-19 20:03:35 浏览: 115
1. 查询零件号为P20的规格及单价。
```
SELECT 规格, 单价 FROM 零件 WHERE 零件号='P20';
```
2. 查询供应数量大于2000的项目名和零件名称。
```
SELECT 项目.项目名, 零件.零件名称 FROM 项目, 零件, 供应
WHERE 项目.项目号=供应.项目号 AND 零件.零件号=供应.零件号 AND 供应.数量>2000;
```
3. 统计每个项目负责人所负责的项目数。
```
SELECT 项目责任人, COUNT(*) AS 项目数 FROM 项目 GROUP BY 项目责任人;
```
4. 查询零件名称中含有“PT-”的零件有多少个。
```
SELECT COUNT(*) FROM 零件 WHERE 零件名称 LIKE '%PT-%';
```
5. 查询“刘强”所负责的项目使用的零件名称及数量。
```
SELECT 零件.零件名称, 供应.数量 FROM 项目, 零件, 供应
WHERE 项目.项目号=供应.项目号 AND 零件.零件号=供应.零件号 AND 项目.项目责任人='刘强';
```
6. 查询没有使用规格为“C型”零件的项目名称。
```
SELECT 项目.项目名 FROM 项目
WHERE 项目.项目号 NOT IN (SELECT 项目号 FROM 供应 WHERE 零件号 IN (SELECT 零件号 FROM 零件 WHERE 规格='C型'));
```
7. 把零件号为P22的零件单价增加1.5元。
```
UPDATE 零件 SET 单价=单价+1.5 WHERE 零件号='P22';
```
8. 删除零件名称为“杯头螺丝”的所有供应信息。
```
DELETE FROM 供应 WHERE 零件号 IN (SELECT 零件号 FROM 零件 WHERE 零件名称='杯头螺丝');
```
9. 创建供应表,定义其中的主码,外码,规定数量大于0。
```
CREATE TABLE 供应 (
项目号 VARCHAR(10),
零件号 VARCHAR(10),
数量 INT,
日期 DATE,
PRIMARY KEY (项目号, 零件号),
FOREIGN KEY (项目号) REFERENCES 项目(项目号),
FOREIGN KEY (零件号) REFERENCES 零件(零件号),
CHECK (数量 > 0)
);
```
10. 创建关于“松柏”项目的视图。视图信息中包括该项目使用的零件名,规格,单价,数量。
```
CREATE VIEW 松柏项目视图 AS
SELECT 零件.零件名称, 零件.规格, 零件.单价, 供应.数量
FROM 项目, 零件, 供应
WHERE 项目.项目号=供应.项目号 AND 零件.零件号=供应.零件号 AND 项目.项目名='松柏';
```
阅读全文