数据库应用答案第五章.pdf
文本预览下载声明
第5 章习题参考答案
1. 简要回答下列问题
⑴ SELECT 语句的哪一子句可以告诉SQL Server 要从何处查询数据?怎样才能限制
从SQL Server 中返回的行数?怎样才能改变由SELECT 语句返回的行的排序?在SELECT
语句中用什么关键字能消除重复行?
答:
FROM 子句指定查询的一个或多个表;
WHERE 子句限制返回的行数;
ORDER BY 子句能改变返回语句的排序(ASC 为升序DESC 为降序);
DISTINCT 能消除重复行。
⑵ 什么数据类型可与LIKE 关键字一起使用?
答:
字符串数据类型
⑶ 请用 BETWEEN ……AND 形式改写条件子句 WHRER mark=560 AND
mark=600 。
答:
WHERE mark BETWEEN 560 AND 600
⑷ 什么聚合函数能对数值类型的列值进行求和?什么聚合函数能用来确定一个表中
包含多少行?在一个包含聚合函数的SELECT 语句中,GROUP BY 子句有那些用途?
答:
SUM 能对数值类型的列值求和;
COUNT 用来确定一个表中包含行数;
GROUP BY 子句将查询结果按分组选项的值进行分组,该列相等的记录为一个组。
⑸ HAVING 与WHERE 同用于指出查询条件,请说明各自的应用场合?
答:
HAVING 与WHERE 分别应用于GROUP BY 和SELECT 之后。
⑹ 如果只想查看两个连接的表中互相匹配的行,应使用什么类型的连接?
答:
如果只想查看两个连接的表中互相匹配的行,应使用内连接。
⑺ 什么是非等值内连接?请说明下面语句返回什么结果?
SELECT p.stud_id, p.name, s.course_id, s.grade
FROM stud_info p, stud_grade s
WHERE p.stud_id s.stud_id
答:
不等值内连接是在连接条件中使用除等号运算符以外的其他比较运算符来比较被连
接列的列值。
⑻ 什么是自连接?请说明下面查询语句返回什么结果?
SELECT b.stud_id, b.name, b.telcode, b.address
FROM stud_info a, stud_info b
WHERE b.address like N北京市% AND a.name=N李伟
答:
自连接指一个表中的一行与同一表中的其他行进行连接。
查询 stud_info 表中与姓名为李伟同样为以北京市开头地址的所有学生(包括李伟自
己)的stud_id,name,telcode,address 。
2. 选择最适合的答案
⑴ 假如需要查找出生日期在 1987 年1 月1 日以前,并且入学成绩大于等于500 或入
学成绩小于等于560 的学生,哪条查询语句最合适?[ D ]
A. SELECT name FROM stud_info
WHERE birthday01/01/1987 AND (mark500 OR mark 560)
B. SELECT name FROM stud_info
WHERE birthday01/01/1987 AND mark 500 AND mark 560
C. SELECT name FROM stud_info
WHERE birthday01/01/1987 AND mark 500 OR mark 560
D. SELECT name FROM stud_info
WHERE birthday01/01/1987 AND mark BETWEEN 500 AND 560
⑵ 针对下列查询语句,有什么错误?[ C ]
SELECT stud_info.name, stud_id FROM stud_info s WHERE stud_id = 0401040123
A. 当表没有被连接时,在查询中不能使用表的别名。
B. 当定义了一
显示全部