有一个大的卖场开发一款数据库系统,用于及时记录、处理订购信息。具体要求:该卖场有多个仓库,每种商品只存放在一个仓库,每个仓库可以存放多种商品,每种商品存放在一个仓库有一个库存数量。商品有商品编号、商品名称和商品单价等属性,仓库有仓库编号、仓库名称、仓库地址和仓库电话等属性。客户可以向卖场订购商品,每种商品可有多个客户订购,每个客户可以订购多种商品,订购商品有订货日期和订货数量。客户有客户编号、客户名称、客户地址和客户电话等属性。卖场日常订购单的具体数据如下表:商品编号商品名称商品单价(元)仓库编号仓库名称仓库地址仓库电话库存数量客户编号客户名称客户地址客户电话订货日期订货数量SP002红牛702红星黄陂区027633231200KH01张三湖北武汉130000000002023-06-2050SP004牛肉粒2001顺发新洲区027895235500KH01张三湖北武汉130000000002023-06-2030SP002红牛702红星黄陂区027633231200KH03王五156231235612023-06-1050SP003雪碧502红星黄陂区027633231120KH01张三湖北武汉130000000002023-06-1020SP005抽纸1202红星黄陂区0276332312000KH02李四河南郑州198123123122023-06-06100SP001娃哈哈301顺发新洲区027895235100KH02李四河南郑州198123123122023-06-0110利用自己学习的数据库相关知识,将以上需求和数据表进行分解,完成以下任务:(6)用SQL语句实现以下功能:查询存放在仓库编号为“01”的商品名称;查询6月份订货数总量;查询已经订货的客户人数;查询订购了“红牛”的客户名字和电话;查询含有“牛”字的所有商品的名称;货品“抽纸”下架了,请对应删除其订货记录。
时间: 2024-03-21 17:44:05 浏览: 61
可以根据需求,将数据表分解为以下几个表:
1. 商品表(commodity)
字段:商品编号(commodity_id),商品名称(commodity_name),商品单价(commodity_price),仓库编号(warehouse_id),库存数量(inventory_num)
2. 仓库表(warehouse)
字段:仓库编号(warehouse_id),仓库名称(warehouse_name),仓库地址(warehouse_address),仓库电话(warehouse_tel)
3. 客户表(customer)
字段:客户编号(customer_id),客户名称(customer_name),客户地址(customer_address),客户电话(customer_tel)
4. 订单表(order)
字段:订单编号(order_id),商品编号(commodity_id),客户编号(customer_id),订货日期(order_date),订货数量(order_num)
根据需求,可以使用以下 SQL 语句实现相应的功能:
1. 查询存放在仓库编号为“01”的商品名称
```
SELECT commodity_name FROM commodity WHERE warehouse_id='01';
```
2. 查询6月份订货数总量
```
SELECT SUM(order_num) FROM `order` WHERE order_date BETWEEN '2023-06-01' AND '2023-06-30';
```
3. 查询已经订货的客户人数
```
SELECT COUNT(DISTINCT customer_id) FROM `order`;
```
4. 查询订购了“红牛”的客户名字和电话
```
SELECT customer_name, customer_tel FROM customer WHERE customer_id IN (SELECT DISTINCT customer_id FROM `order` WHERE commodity_id IN (SELECT commodity_id FROM commodity WHERE commodity_name='红牛'));
```
5. 查询含有“牛”字的所有商品的名称
```
SELECT commodity_name FROM commodity WHERE commodity_name LIKE '%牛%';
```
6. 货品“抽纸”下架了,请对应删除其订货记录
```
DELETE FROM `order` WHERE commodity_id=(SELECT commodity_id FROM commodity WHERE commodity_name='抽纸');
```
阅读全文