加入收藏 | 设为首页 | 会员中心 | 我要投稿 南通站长网 (https://www.0513zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 服务器 > 系统 > 正文

SQL中NULL是啥意思?怎样使用?

发布时间:2022-04-26 08:58:28 所属栏目:系统 来源:互联网
导读:我们在使用SQL Server中或维护时,常会见到NULL,很多新手对于null是什么?不是很了解,对此下面就给大家介绍下关于null的通俗解释和使用。 下面是MSDN给出的一段简短描述(见Null Values): A value of NULL indicates that the value is unknown. A value
       我们在使用SQL Server中或维护时,常会见到NULL,很多新手对于“null是什么?”不是很了解,对此下面就给大家介绍下关于null的通俗解释和使用。
 
        下面是MSDN给出的一段简短描述(见“Null Values”):
 
A value of NULL indicates that the value is unknown. A value of NULL is different from an empty or zero value. No two null values are equal. Comparisons between two null values, or between a NULL and any other value, return unknown because the value of each NULL is unknown.
        通俗的讲,NULL就是一个值,而且这个值是未知的(unknown);NULL不能等价任何值,甚至都不等价它自己,即NULL不等于NULL。为了清晰的理解上述的内容,我们创建一个测试表Test_NULL,然后对表插入2条含有NULL值的记录,并进行相关验证操作:
 
--创建一张允许NULL值的表
CREATE TABLE Test_NULL (
  num INT NOT NULL PRIMARY KEY
  ,fname NVARCHAR(50) NULL
  ,lname NVARCHAR(50) NULL
)
 
--对表插入4条数据:最后2条记录含有NULL值
INSERT INTO Test_NULL (num,fname,lname) VALUES(1, 'Tom','Jane')
INSERT INTO Test_NULL (num,fname,lname) VALUES(2, 'Dave','')
INSERT INTO Test_NULL (num,fname) VALUES(3, 'Aaron')
INSERT INTO Test_NULL (num,fname) VALUES(4, 'Betty')
 
        正确查询/使用SQL Server中的NULL
 
        由于NULL是未知的,因此在SQL Server默认情况下我们不能使用=或<>去判断或查询一条NULL的记录(见上述),正确的方式是:使用IS NULL或IS NOT NULL去查询或过滤一条含有NULL的记录。
 
        另外有函数ISNULL(),可判断并转换NULL为其他值。

(编辑:南通站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读