问答题

案例分析题

某宾馆需要建立一个住房管理系统,部分的需求分析结果如下:
(1) 一个房间有多个床位,同一房间内的床位具有相同的收费标准。不同房间的床位收费标准可能不同。
(2) 每个房间有房间号(如 201、202 等)、收费标准、床位数目等信息。
(3) 每位客人有身份证号码、姓名、性别、出生日期和地址等信息。
(4) 对每位客人的每次住宿,应该记录其入住日期、退房日期和预付款额信息。
(5) 管理系统可查询出客人所住房间号。
根据以上的需求分析结果,设计一种关系模型如图 2-1 所示:

若将上述各关系直接实现为对应的物理表,现需查询在2005年1月1日到2005年 12月31日期间,在该宾馆住宿次数大于5次的客人身份证号,并且按照入住次数进行降序排列。下面是实现该功能的SQL语句,请填补语句中的空缺。 SELECT 住宿.身份证号,count (入住日期) FROM 住宿,客人 WHERE 入住日期>=’20050101’AND 入住日期<=’20051231’ AND 住宿.身份证号=客人.身份证号 GROUP BY (2) (3) count(入住日期)>5 (4)

【参考答案】

(2)住宿.身份证号 (3)HAVING (4)ORDER BY 2 DSC,或ORDER BY 2 DESC