【SQL开源代码栏目提醒】:以下是网学会员为您推荐的SQL开源代码-CH09.sql,希望本篇文章对您学习有所帮助。
USE 练习01
-- P9-4a
SELECT *
FROM 书籍
-- P9-4b
SELECT 书籍名称, CAST(价格 * 0.8 AS numeric(4, 0) ) AS 折扣价
FROM 书籍
-- P9-5a
SELECT '大家好' , 3+5 , LOWER('ABC')
-- P9-5b
SELECT 出版公司
FROM 书籍
-- P9-6a
SELECT DISTINCT 出版公司
FROM 书籍
-- P9-6b
SELECT TOP 2 *
FROM 书籍
-- P9-7a
SELECT TOP 30 PERCENT *
FROM 书籍
-- P9-7b
SELECT TOP 3*
FROM 书籍
ORDER BY 价格
-- P9-8
SELECT TOP 3 WITH TIES *
FROM 书籍
ORDER BY 价格
-- P9-10a
SELECT IDENTITYCOL, ROWGUIDCOL
FROM 书籍
-- P9-10b
SELECT 书籍名称 AS 电脑书籍名称
FROM 书籍
-- P9-11
SELECT 客.客户名称, 客.联络人, 数量, 书名
FROM 客户 AS 客 JOIN 出货记录 AS 出
ON 客.客户名称 = 出.客户名称
-- P9-12
SELECT 企划书籍.编号, 名称, 价钱
FROM 企划书籍 JOIN 企划书籍预定价
ON 企划书籍.编号 = 企划书籍预定价.编号
-- P9-13
SELECT 企划书籍.编号, 名称, 价钱
FROM 企划书籍, 企划书籍预定价
WHERE 企划书籍.编号 = 企划书籍预定价.编号
-- P9-14a
SELECT 旗.产品名称 AS 旗旗公司产品名称, 旗.价格 ,
标.产品名称 AS 标标公司产品名称, 标.价格
FROM 旗旗公司 AS 旗 JOIN 标标公司 AS 标
ON 旗.产品名称 = 标.产品名称
-- P9-14b
SELECT 旗.产品名称 AS 旗旗公司产品名称, 旗.价格 ,
标.产品名称 AS 标标公司产品名称, 标.价格
FROM 旗旗公司 AS 旗 LEFT JOIN 标标公司 AS 标
ON 旗.产品名称 = 标.产品名称
-- P9-15a
SELECT 旗.产品名称 AS 旗旗公司产品名称, 旗.价格 ,
标.产品名称 AS 标标公司产品名称, 标.价格
FROM 旗旗公司 AS 旗 RIGHT JOIN 标标公司 AS 标
ON 旗.产品名称 = 标.产品名称
-- P9-15b
SELECT 旗.产品名称 AS 旗旗公司产品名称, 旗.价格 ,
标.产品名称 AS 标标公司产品名称, 标.价格
FROM 旗旗公司 AS 旗 FULL JOIN 标标公司 AS 标
ON 旗.产品名称 = 标.产品名称
-- P9-16
SELECT 旗.产品名称 AS 旗旗公司产品名称, 旗.价格 ,
标.产品名称 AS 标标公司产品名称, 标.价格
FROM 旗旗公司 AS 旗 CROSS JOIN 标标公司 AS 标
-- P9-17a
SELECT 员工., 员工.职位,
长官. AS 主管
FROM 员工 LEFT JOIN 员工 AS 长官
ON 员工.主管编号 = 长官.编号
-- P9-17b
SELECT *
FROM 员工
WHERE 性别 = '女'
-- P9-18
SELECT 客户名称, SUM(数量) AS 出货数量
FROM 出货记录
GROUP BY 客户名称
-- P9-19
SELECT 客户名称 ,
DATEPART(YEAR, 日期) AS 年份 ,
SUM(数量) AS 出货数量
FROM 出货记录
GROUP BY 客户名称, DATEPART(YEAR, 日期)
ORDER BY 客户名称, DATEPART(YEAR, 日期)
-- P9-20a
SELECT 客户名称, SUM(数量) AS 出货数量, COUNT(数量) AS 次数
FROM 出货记录
WHERE 数量 > 8
GROUP BY ALL 客户名称
-- P9-20b
SELECT 客户名称, 书名, SUM(数量) AS 总数量
FROM 出货记录
GROUP BY 客户名称, 书名 WITH CUBE
-- P9-21
SELECT 客户名称, 书名, SUM(数量) AS 总数量
FROM 出货记录
GROUP BY 客户名称, 书名 WITH ROLLUP
-- P9-22
SELECT 客户名称, 书名, SUM(数量) AS 总数量
FROM 出货记录
GROUP BY 书名, 客户名称 WITH ROLLUP
-- P9-23
SELECT 客户名称, 书名, SUM(数量) AS 总数量
FROM 出货记录
GROUP BY 客户名称, 书名
HAVING SUM(数量) >= 6
-- P9-24
SELECT 客户名称, 书名, COUNT(*) AS 次数
FROM 出货记录
GROUP BY 客户名称, 书名
HAVING COUNT(*) > 1
-- P9-25
SELECT *
FROM 出货记录
ORDER BY 客户名称 DESC, 数量 ASC
-- P9-26
SELECT *
FROM 出货记录
COMPUTE SUM(数量)
-- P9-27
SELECT *
FROM 出货记录
ORDER BY 客户名称
COMPUTE SUM(数量) BY 客户名称