sql 语句中的 NULL值
发布时间:2024-01-14 06:41:16
标签:sql,NULL
今天写了这样的代码
DECLARE @atr NVARCHAR(20)
SET @atr = NULL
IF(@atr = NULL)
BEGIN
PRINT 1
END
原本是想打印出1的。但是没有。 把 代码修改成如下:
DECLARE @atr NVARCHAR(20)
SET @atr = NULL
IF(@atr IS NULL)
BEGIN
PRINT 1
END
这样就正确打印出1了。
然后自己有做了如下的修改,把if语句修改成
IF(NULL = NULL)
BEGIN
PRINT 1
END
结果:不会打印出1
由此我们可以总结sql语句中的NULL值和任何值在做 ”=“运算的时候都不会相等。 要用" IS NULL " 做是否是NULL值的判断。
我们还可以用函数 ISNULL(@str,0) = 0 来判断 变量是否是NULL值。
小问题,记录一下,强化记忆,善于总结,不走冤枉路。
================================================================================
补充:NULL 与 "+" 运算符。
“+” 可以用来做字符串的连接,还可以做加法运算,那么NULL值和字符串做“+”会是什么样的结果?我写了下面的验证程序:
DECLARE @str NVARCHAR(200)
DECLARE @str1 NVARCHAR(200)
DECLARE @str2 NVARCHAR(200)
SET @str = NULL
SET @str1 = 'You look pretty today'
SET @str2 = @str + @str1
PRINT @str2
结果什么东西都没有打印出来,为什么呢 ?我们测试一下@str2现在是何值?
IF(@str2 IS NULL)
PRINT 1
结果打印出1,于是我们可以猜测NULL和任何类型做“+”运算结果仍为NULL值
再写一个NULL和INT类型做"+"的验证程序:
DECLARE @num INT
DECLARE @num1 INT
DECLARE @num2 INT
SET @num = 1
SET @num1 = 2
SET @num2 = @num + @num1
PRINT @num2
结果打印出3,将红色加粗部分换成 SET @num = NULL,结果是什么呢 ?自己试吧,哈哈。


猜你喜欢
- 混淆矩阵 混淆矩阵(Confusion Matrix)是机器学习中用来总结分类模型预测结果的一
- 现有两个元组(('a'),('b')),(('c'),('d')),请使用p
- Python json 错误xx is not JSON serializable解决办法在使用json的时候经常会遇到xxx
- 一、概述公司新购了一批PC,准备把几个性能较优的PC升级为数据库服务器,替换老旧的机器。公司有套POS终端软件,后台数据存储是 MySQL
- 1、实现目标编写一个命令行通讯录程序,可以添加、查询、删除通讯录好友及电话2、实现方法创建一个类来表示一个人的信息。使用字典存储每个人的对象
- mysql脏页由于WAL机制,InnoDB在更新语句的时候,制作了写日志这一个磁盘操作,就是redo log,在内存写完redo log后,
- 大家好,都说追女孩方法大于态度,学Python也是,今天就给大家分享的是我在用Python编写程序时常用的一些小技巧。1.多次打印同一个字符
- 目录引言 操作多线程/多进程1、创建线程池2、submit3、map4
- 代码如下: function HandleTabKey(evt) {
- 1.CUDA驱动和CUDA Toolkit对应版本表一:CUDA驱动及CUDA Toolkit最高对应版本最新可查阅官方文档注:驱动是向下兼
- 秉承MVC架构的思想,CI中的所有控制器都需要经过单点入口文件index.php(默认)来加载调用。也就是说,在默认情况下,所有CI开发项目
- 本文为大家分享了MySQL免安装版(zip)安装配置教程,供大家参考,具体内容如下1.MySQL官网下载2.将下载的解压到D:\mysql-
- 在学习redis过程中提到一个缓存击穿的问题, 书中参考的解决方案之一是使用布隆过滤器, 那么就有必要来了解一下什么是布隆过滤器。在参考了许
- mat数据格式是Matlab默认保存的数据格式。在Python中,我们可以使用h5py库来读取mat文件。>>> impo
- 本文详细分析了Yii配置文件的用法。分享给大家供大家参考。具体分析如下:Yii配置文件比ThinkPHP复杂多了,先把自己了解的配置记录下来
- 工具/原料win7操作系统MySQLzip格式安装包方法/步骤MySQL安装文件分为两种,一种是msi格式的,一种是zip格式的。如果是ms
- 导语泡泡王国 欢乐多多咕噜噜,吹泡泡,七彩泡泡满天飘。大的好像彩气球,小的就像紫葡萄。当泡泡漫天飞舞时,大朋友、小朋友都会情不自禁地被它吸引
- 本文实例讲述了PHP实现网页内容html标签补全和过滤的方法。分享给大家供大家参考,具体如下:如果你的网页内容的html标签显示不全,有些表
- 思路简单的生成和读取 CSVCSV 文件格式使用 csv 库Python with CSV先有个很朴素的生成和解析的方法。生成:data =
- 时间处理是我们日常开发中最最常见的需求,例如:获取当前datetime、获取当天date、获取明天/前N天、获取当天开始和结束时