单选题
(31)到(35)题使用如下数据表。
“班级”表:
班级号 班级名
11 信息200801班
12 信息200802班
21 计算机200801班
22 计算机200802班
“教师”表:
教师编号 姓名 班级号 工资 职称 电话
T11 李清 11 1500.00 讲师 65854587
T22 王晓黎 12 2200.00 教授 63525876
T33 欧倩倩 11 1600.00 讲师 65548478
T44 刘宏 21 1200.00 助教 63252585
T55 赵虎 22 2100.00 教授 68989854
T66 胡丽丽 22 1400.00 讲师 65847952
T77 刘纷 12 1100.00 助教 65847931
单选题
若有如下SQL语句:
SELECT姓名,MIN(工资)FROM教师GROUP BY班级号
执行该语句后,查询结果共显示( )条记录。
【正确答案】
C
【答案解析】[解析] 进行SQL简单计算查询时,还可以加上GROUP BY子句进行分组计算查询。
通常来说,一个计算函数的范围是满足WHERE子句指定条件的所有记录。当加上GROUP BY子句后,系统会将查询结果按指定列分成集合组。当一个计算函数和一个GROUP BY子句一起使用时,计算函数的范围变为每组所有的记录。
本题通过GROUP BY短语将记录按“班级号”分组,然后通过MlN()函数求每个班级中工资最少的教师信息。不难看出“教师”表中共有4个不同的班级号,就相当于对4组记录进行计算求每组中的最小工资,因此,最后得到的结果也有4条记录。
单选题
若有如下SQL语句:
SELECT班级号,姓名,工资;
FROM教师;
ORDER BY班级号,工资DESC
执行该语句后,查询结果第一条记录的“职工号”是( )。
【正确答案】
B
【答案解析】[解析] 在SQL查询中,可以通过ORDER BY短语对查询的结果进行排序排序,利用ASC或DESC短语指定排序方式,其中ASC表示按升序排序,此为默认排序方式,DESC短语表示按降序方式排序。
本题中SQL语句的功能是检索“教师”表中教师的“班级号”、“姓名”和“工资”的信息,查询结果首先按“班级号”字段升序排序,再按“工资”字段降序排序。
单选题
若有如下SQL语句:
SELECT班级,班级名,SUM(工资);
FROM班级,教师;
WHERE班级,班级号=教师,班级号;
GROUP BY班级,班级号
该语句的查询结果是( )。
【正确答案】
B
【答案解析】[解析] 本题SQL语句的功能是通过GROUP BY短语按“班级号”对记录进行分组:然后通过SUM()函数求每个班的教师工资的总和;最后输出结果包括“班级”表中的“班级名”和每个班的工资总和字段。两个表进行连接的字段为“班级号”,在WHERE条件中指出。
单选题
若有如下SQL语句
SELECT班级,班级名,COUNT(职称)AS人数;
FROM班级,教师;
WHERE班级,班级号=教师.班级号AND职称="讲师";
GROUP BY班级.班级号;
ORDER BY 2
该语句执行结果的第一记录的值为( )。
【正确答案】
D
【答案解析】[解析] 本题SQL语句的功能是查询“班级”表和“教师”表中的记录(两表的连接字段为“班级号”,在WHERE短语中指定),首先根据WHERE短语中的筛选条件,查找“职称”为“讲师”的记录:然后通过GROUPBY短语按“班级号”对查询的记录进行分组,接着通过COUNT()函数统计每个班级中的“讲师”人数是多少;最后将查询结果按输出字段的第2个字段升序排序,即按“人数”升序排序。
单选题
若有如下SQL语句
SELECT DISTINCT工资FROM教师;
WHERE工资=(SELECT MAX(工资)FROM教师);
INTO TABLE Result
执行该语句后,Result表中的记录个数是( )。
【正确答案】
A
【答案解析】[解析] 本题SQL查询语句首先通过内层查询语句“SELECTMAX(工资)FROM教师”检索教师表中的最高工资:然后外层查询中检索教师表中的工资字段值,查询的筛选条件为“工资”等于内循环中的最高工资数,通过DISTINCT短语去掉查询结果中的重复值;最后将结果输出到数据表Result中。其中,INTO TABLE短语表示将表输出指定的数据表中,该表是一个自由表。