SQL Server查询—null的用法

作者 : 攻城狮 发布时间: 2023-03-6 共289人阅读
null:空值,是没有值的意思
零:0是一个确定的值
所以,null和0不一样。
1、输出奖金为空的员工的信息
select * from emp where comm is null;
2、输出奖金为非空的员工的信息
select * from emp where comm is not null;
3、null的错误用法
select * from emp where comm = null; --输出为空,error
select * from emp where comm <> null; --输出为空,error
select * from emp where comm != null; --输出为空,error
--总结:null不参与如下运算 = , <> , != ;可以参与如下运算:is,not is
4、输出每个员工的工号、姓名、年薪(12个月的工资+奖金) ,错误写法
select empno,ename,sal*12+comm as "年薪" from emp; --因为comm中有null存在,所以输出错误
--总结:任何类型的数据都允许为null,任何数字与null参与数学运算结果永远为null。
5、正确输出每个员工的工号、姓名、年薪(12个月的工资+奖金)的写法
select empno,ename,sal*12+isnull(comm,0) as "年薪" from emp;
--解释:isnull(comm,0) 表示如果comm是null就返回0,否则返回comm的值
6、字符串值为空 与 null 的区别
当插入表记录时,如果插入的语句中包含了字段A,但字段A对应的值是空的(只出现了一个单引号,单引号里面没有数据),那么我们说字段A的值是空字符串,并不是null。
当插入表记录时,如果插入的语句中没有包含字段A,也就是说把字段A直接省略了,此时插入的记录中字段A会自动填充为null。
1.本站所有资源收集于互联网和用户上传,如有侵权请联系客服删除;
2.本站不保证所提供下载资源的准确性、安全性和完整性,请自行测试;
3.资源仅供学习交流使用,版权归原作者所有,请在下载后24小时之内删除;
4.如用于商业或非法用途实属个人行为,与本站无关,一切后果由用户自负;
5.本站提供的源码、主题模板、插件等资源,都不包含技术服务,请大家谅解;
6.本站所设置的资源售价只是用于赞助,收取费用仅维持本站的日常运营所需;
7.如果您有好的源码或者教程,请至个人中心发布资源,将有积分奖励和额外收入;
8.本站默认解压密码:www.ittiantang.com,如有链接无法下载,请联系管理员处理。

IT天堂 » SQL Server查询—null的用法

常见问题FAQ

IT天堂的会员权益只能通过充值获得吗?
您可以通过签到功能获得积分,用积分兑换会员权益。
网站上的VIP资源只能通过充值购买吗?
您可以通过每日签到获得积分,使用积分直接购买VIP资源。

发表评论