答案:
create index 学生编号索引 on 成绩表(学生编号)
项目五思考和练习
填空题
1. 在select子句中代表全部列的通配符是*。
2. “+”不仅可以作为两个算术表达式相加的算术运算符,而且可以将两个或更多的字符串表达式按顺序组合为一个字符串。
3. 由算术运算符构成的表达式称为“算术表达式”。 4. 由“+”连接的字符串称为“字符串连接表达式”。
5. 在查询结果集中,select子句中表达式通常显示为“无列名”,为了增加查询语句的可读
性,可以对表达式定义别名。
6. 关系表达式和逻辑表达式也称为“条件表达式”,关系表达式和逻辑表达式的结果只能
为“true”或“false”。
7. SQL Server提供逻辑运算符like和no like实现模糊查询。 8. 在order by子句中可以对列按照升序和降序顺序排序。
选择题
1. 查询语句中允许包含下列哪些子句。(ABCD)
A.select子句 B.from子句 C.where子句 D.order by子句
2. 在select子句中允许出现下列哪些项目。(ABC)
A.列名 B.函数 C.表达式 D.表名
3. “成绩 between 10.5 and 99.5”相当于下列哪个逻辑表达式(D)。
A.成绩>=10.5 and成绩<99.5 B.成绩>10.5 and成绩<99.5 C.成绩>=10.5 or 成绩<=99.5 D.成绩>=10.5 and成绩<=99.5
4. 能够消除查询结果中重复记录的函数是(A)。
A.distinct
B.case…when… C.convert D.substring
5. 能够对查询结果分类处理的函数是(B)。
A.distinct
B.case…when… C.convert D.substring
6. 能够按长度截取字符串的函数是(D)。
A.distinct
B.case…when… C.convert D.substring
7. 能够将日期型数据转换为字符串的函数是(C)。
A.distinct
B.case…when… C.convert D.substring
简答题
1. 简述查询语句的基本语法结构。
答案:
查询语句的语法结构,如下所示。 select <*/列名/表达式,......> from <表名>
where <关系表达式/逻辑表达式> group by <列名/表达式>
Having <有聚合函数参与的关系表达式或逻辑表达式> order by <列名/表达式> desc/asc,......
2. 简述SQL Server常用的算术运算符的种类和用法。
答案:
算术运算符对一个列或多个列执行数学运算,常用算术运算符的含义: +(加):执行两个数相加的算术运算 -(减):执行一个数减去另一个数的算术运算 *(乘):执行两个数相乘的算术运算 /(除):执行一个数除以另一个数的算术运算 %(取模):返回一个除法运算的整数余数
由算术运算符构成的表达式称为?算术表达式?。列是最简单的表达式,一个算术表达式也可以嵌套在另一个算术表达式中参与运算。
3. 简述SQL Server的比较运算服和常用的逻辑运算符和含义。
答案:
(1)比较运算符的含义:
=(等于):比较两个表达式的等价性
>(大于):比较两个表达式。当比较非空表达式时,如果左操作数的值大于右操作数,则结果为true,否则结果为false。如果任何一个操作数为null,或两个都为null,则返回null
<(小于):比较两个表达式。比较非空表达式时,如果左操作数的值小于右操作数,则结果为true,否则结果为false。如果任何一个操作数为null,或两个都为null,则返回null
>=(大于等于):比较两个表达式以得出大于或等于的结果
<=(小于等于):比较两个表达式。比较非空表达式时,如果左边操作数的值小于或等于右边的操作数,则结果为true,否则结果为false。如果任何一个操作数为null,或两个都为null,则返回null
<>(不等于):比较两个表达式。当比较非空表达式时,如果左操作数不等于右操作数,
则结果为true,否则结果为false。如果任何一个操作数为null,或两个都为null,则返回null
!=(不等于):测试某个表达式是否不等于另一个表达式。如果任何一个操作数为null,或两个都为null,则返回null。其功能与<>(不等于)比较运算符相同
!<(不小于):比较两个表达式。当比较非空表达式时,如果左边操作数的值不小于右边操作数的值,则结果为true,否则结果为false。如果任何一个操作数为null,或两个都为null,则返回null
!>(不大于):比较两个表达式。当比较非空表达式时,如果左侧操作数的值不大于右侧的操作数,则结果为true,否则结果为false。如果任何一个操作数为null,或两个都为null,则返回null
(2)逻辑运算符的含义: and(与):参与运算的两个表达式全部为true时结果为true,两个表达式任意1个为false时结果为false
or(或):参与运算的两个表达式全部为false时结果为false,两个表达式任意1个为true时结果为true
not(非):参与运算的表达式为true时结果为false,表达式为false是结果为true 4. 简述where子句的语法。
答案:
在实际应用中,表中的记录可能会多达几万条甚至几百万条,如果将全部记录都显示出来,显然为观察查询结果造成困难。SQL Server允许在where子句中使用?关系表达式?和?逻辑表达式?设臵查询条件,只返回符合条件的记录。 5. 简述逻辑联接谓词like和between…and…的用法。
答案:
(1)like模糊查询的通配符的含义: %:包含零个或多个字符的任意字符串 _:任意单个字符
(2)between…and…的含义
列名between最小值and最大值:相当于最小值≤列名≤最大值 6. 简述order by子句的用法。
答案:
能够对指定的列按升序或降序排列查询结果。SQL Server提供?order by?关键字对查询结果进行排序。
7. 简述SQL Server函数的含义。
答案:
数是能够完成特定功能并返回处理结果的一组T-SQL语句,处理需要的基本数据称为?输入参数?,处理过程称为?函数体?,处理结果称为?返回值?。 8. 简述常用函数distinct、case…when…、convert和substring的语法。
答案:
distinct函数消除查询结果中的重复行。语法如下: distinct 列名/表达式
在select子句中使用case…when…函数可以根据列的取值不同,定义不同的查询结果。语法如下:
case 列名 when 列值1 then 查询结果1 when 列值2 then 查询结果2
……
when 列值n then 查询结果n else 其他查询结果 end
用convert类型转换函数将日期时间类型数据转换为字符串类型。语法如下: convert函数的语法格式为:convert(数据类型[(长度/精度)],表达式[,转换样式]) 字符串截取函数substring按长度截取字符串,保留有用信息,舍弃无用信息。 substring函数的语法格式:substring(表达式,起始位臵,截取长度)
练习题
1. 对“课程表”查询,显示专业编号为Z02的课程记录。
答案: select *
from 课程表
where 所属专业编号='Z02'
2. 对“课程表”查询,显示各专业的基础课程信息。提示:课程名称中带有“基础”的记
录。 答案: select *
from 课程表
where 课程名称 like '*基础*'
3. 对“课程表”查询,显示课时在40到60小时的课程信息。
答案: select *
from 课程表
where 课时 between 40 and 60
4. 对“课程表”查询,按专业编号有小到大,课时由多到少的顺序对各课程记录排序。
答案: select *
from 课程表
order by 专业编号 asc,课时 desc 5. 对“课程表”查询,参考“专业表”,将练习题4的结果中的“专业编号”显示为“专
业名称”。 答案:
select 课程编号, 课程名称, 课时,
case 所属专业编号 when 'Z01' then '计算机系' when 'Z02' then '建筑系' when 'Z03' then '美术系' when 'Z04' then '中医护理' end , 教师编号 from 课程表
项目六思考和练习
填空题
1. 常用的聚合函数有:计算最大值的max,计算最小值的min,统计总和的sum,统计记录总数的count和计算平均值的avg。
2. 聚合函数的计算对象不仅是列而且可以是表达式。
3. SQL Server提供了group by关键字,可以按列值对记录进行分组,并且按组统计数据。 4. 根据T-SQL的语法规定,where子句中设置的条件是在分组统计之前使用的,因此where
子句中不能出现聚合函数构成的关系表达式。
5. SQL Server提供了专为分组统计使用的、与where子句功能类似的having子句对分组统计结果进行筛选。 6. 联接谓词any的作用是:比较指定列的值和子查询的结果,指定列的值与子查询结果集
中的任何一个结果满足比较条件即可。
7. 联接谓词all的作用是:比较指定列的值和子查询的结果,指定列的值与子查询结果集
中的全部结果都要满足比较条件。
8. 联接谓词any和all同样必须与“比较运算符”一起使用。
选择题
1. 对列或表达式计算最大值和最小值的函数是(A)。
A.max和min B.sum C.count D.avg
2. 对列或表达式计算总和的函数是(B)。
A.max和min B.sum C.count D.avg
3. 对列或表达式计算平均值的函数是(D)。
A.max和min B.sum C.count D.avg
4. 统计记录总数的函数是(C)。
A.max和min B.sum C.count D.avg
5. 下列哪些描述是正确的。(ABD)
A.聚合函数的运算对象可以是列,也可以是表达式。
B.having子句可以实现where子句额功能,但where子句不能实现having子句的功能。 C.where子句中可以包含聚合函数。
D.order by子句可以对聚合函数的运算结果排序。
6. 如果查询的select子句为select A,B,C*D ,则不能使用的group by子句是(C)。
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库思考和练习_答案(4)在线全文阅读。
相关推荐: