加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
123.sql 2.24 KB
一键复制 编辑 原始数据 按行查看 历史
方桂龙 提交于 2021-03-25 18:28 . 方桂龙第9次
create database buy
go
use buy
create table Orders
(
OrderId int identity(1,1) primary key,
OrderDate date
)
create table Orderitem
(
ItemId int identity(1,1),
OrderId int references Orders(OrderId),
ItemType nvarchar(10),
ItemName nvarchar(10),
TheNumber int,
TheMoney int
)
insert into Orders(OrderDate)
values('2008-01-12 00:00:00.000'),
('2008-02-10 00:00:00.000'),
('2008-02-15 00:00:00.000'),
('2008-03-10 00:00:00.000')
select * from Orders
insert into Orderitem(OrderId,ItemType,ItemName,TheNumber,TheMoney)
values(1,'文具','笔','72','2'),
(1,'文具','尺','10','1'),
(1,'体育用品','篮球','1','56'),
(2,'文具','笔','36','2'),
(2,'文具','固体胶','20','3'),
(2,'日常用品','透明胶','2','1'),
(2,'体育用品','羽毛球','20','3'),
(3,'文具','订书机','20','3'),
(3,'文具','订书针','20','3'),
(3,'文具','裁纸刀','5','5'),
(4,'文具','笔','20','2'),
(4,'文具','信纸','50','1'),
(4,'日常用品','毛巾','4','5'),
(4,'日常用品','透明胶','30','1'),
(4,'体育用品','羽毛球','20','3')
--1.查询所有订单订购的所有物品数量总和
select sum(TheNumber) 物品数量总和 from Orderitem
--2.查询订单编号小于3的,平均单价小于10 每个订单订购的所有物品的数量和以及平均单价
select avg(TheMoney)平均单价,sum(TheNumber)物品总数 from Orderitem where OrderId<3
group by OrderId
having avg(TheMoney)<10
--3.查询平均单价小于10并且总数量大于 50 每个订单订购的所有物品数量和以及平均单价
select avg(TheMoney)平均单价, sum(TheNumber)物品总数 from Orderitem
group by TheNumber
having avg(TheMoney)<10 and TheNumber>50
--4.查询每种类别的产品分别订购了几次,例如:
--文具 9
--体育用品 3
--日常用品 3
select count (*) 购买次数 ,ItemType 产品名称 from Orderitem
group by ItemType
--5.查询每种类别的产品的订购总数量在100以上的订购总数量和平均单价
select avg(themoney) 平均单价,sum(thenumber) 订购总量 from Orderitem
group by TheNumber
having sum(TheNumber)>100
--6.查询每种产品的订购次数,订购总数量和订购的平均单价,例如:
--产品名称 订购次数 总数量 平均单价
--笔 3 120 2
select ItemName 产品名字,avg(themoney) 平均单价,sum(thenumber) 总数量, count(*)订购次数 from Orderitem
group by ItemName
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化