实验七 SQL 的空值和空集处理1、 实验目的认识 NULL 值在数据库中的特别含义,了解空值和空集对于数据库的数据查询操作,特别是空值在条件表达式中与其他的算术运算符或者逻辑运算符的运算中,空集作为嵌套查询的子查询的返回结果时候的特别性,能够熟练使用 SQL 语句来进行与空值,空集相关的操作
2、 实验内容通过实验验证在原理解析中分析过的 SQL Server 对 NULL 的处理,包括:在查询的目标表达式中包含空值的运算
在查询条件中空值与比较运算符的运算结果
使用 IS NULL 或 IS NOT NULL 来推断元组该列是否为空值
对存在取空值的列按值进行 ORDER BY 排序
使用保留字 DISTINCT 对空值的处理,区分数据库的多中取值与现实中的多种取值的不同
使用 GROUP BY 对存在取空值的属性值进行分组
结合分组考察空值对各个集合函数的影响,特别注意对 COUNT(*)和 COUNT(列名)的不同影响
考察结果集是空集时,各个集函数的处理情况
验证嵌套查询中返回空集的情况下与各个谓词的运算结果
进行与空值有关的等值连接运算
3、 实验步骤(1)查询所有选课记录的成绩并将它换算为五分制(满分为 5 分,合格为 3 分),注意,创建表时允许 Score 取 NULL 值
create table Wangjy_mark(wjy_Sno char(6) ,wjy_Cno char(6),wjy_Score int primary key(wjy_Sno,wjy_Cno),)insert into Wangjy_markselect wjy_Sno,wjy_Cno,wjy_Scorefrom Wangjy_Reportsupdate Wangjy_markset wjy_Score=wjy_Score/20(2)通过查询选修编号 C07