问答题

试题二
阅读下列说明,回答问题1至问题3,将解答填入答题纸的对应栏内。
【说明】
某网上书店后台数据库的部分关系模式如下:
会员(会员编号,用户名,密码,姓名,地址,邮编,电话,消费额,积分)
图书(图书编号,类型名称,图书名称,作者,出版社,出版日期,ISBN,价格)
订单(订单编号,用户名,销售额,订购日期,出货日期)
订单明细(订单明细编号,订单编号,图书编号,数量)

请完成下列查询的SQL语句。
(1)查询名称中包含“数据库”的图书的图书名称,作者,出版社和出版日期。
SELECT (d)
FROM 图书
WHERE 图书名称 (e) ;
(2)查询提供销售(图书表中有)但没有销售过(没在订单明细表中出现)的图书名称和出版社。
SELECT 图书名称, 出版社
FROM图书
WHERE NOT EXISTS (
SELECT (f)
FROM订单明细
WHERE (g) ) ;
(3)查询订购图书数量最多的会员名及其订购的数量。
SELECT 用户名, (h)
FROM订单, 订单明细
WHERE (i)
GROUP BY 用户名
HAVING (j)
( SELECT SUM(数量)
FROM 订单, 订单明细
WHERE 订单.订单编号 = 订单明细.订单编号
GROUP BY 用户名) ;
(4)为了统计会员的购买行为信息,实施有意义的客户关怀策略,查询会员的平均订购间隔时间,考虑多次购买图书和一次购买图书的情况(其中,DATEDIFF 函数表示两个日期之间的天数)。
SELECT 用户名, CASE WHEN (k)
THEN DATEDIFF(MAX(订购日期), MIN(订购日期)) / (l)
ELSE DATEDIFF (CURRENT_TIMESTAMP, MIN(订购日期))
END AS AVG_GAP
FROM 订单
(m) ;

【参考答案】

(1)(d)图书名称、作者、出版社、出版日期
(e)LIKE'%数据库%’
(2......

(↓↓↓ 点击下方‘点击查看答案’看完整答案、解析 ↓↓↓)