原文:mssql sqlserver in 关键字在值为null的应用举例

转自:http://www.maomao365.com/?p=6873

摘要:
下文通过案例分析in 关键字在值为null的应用举例,
分析出not in关键字在null值产生的异常信息
如下所示:

CREATE TABLE testA(keyId INT)
CREATE TABLE testB(keyId INT)
GO
INSERT INTO testA(keyId) VALUES (1)
INSERT INTO testA(keyId) VALUES (2)
INSERT INTO testA(keyId) VALUES (3)
GO
INSERT INTO testB(keyId) VALUES (1)
INSERT INTO testB(keyId) VALUES (2)
INSERT INTO testB(keyId) VALUES (4)
INSERT INTO testB(keyId) VALUES (NULL)
GOSELECT * FROM testA WHERE keyId IN (SELECT keyId FROM testB)
-----输出------
/*
keyId
1
2
*/SELECT * FROM testA WHERE keyId not IN (SELECT keyId FROM testB)
------无输出记录-----
/*
keyId
*/
INSERT INTO testA VALUES (NULL) ---在testA表中插入空值
SELECT * FROM testA WHERE EXISTS(SELECT null  FROM testB WHERE testA.keyId=testB.keyId
)
----输出----
/*
keyId
1
2
*/
SELECT * FROM testA WHERE not  EXISTS(SELECT null  FROM testB WHERE testA.keyId=testB.keyId
)
/*
keyId
3
NULL
*/
SELECT * FROM testA WHERE testA.keyId NOT in (SELECT testB.keyId FROM testB WHERE testB.keyId IS NOT NULL
)drop table testA
drop table testB

通过以上测试,我们可以看出not in 查询关键字如果子表中存在空值,则无法查询出任何记录,会导致异常产生,
需使用not exists获取相应的空值信息

mssql sqlserver in 关键字在值为null的应用举例相关推荐

  1. mssql sqlserver 对不同群组对象进行聚合计算的方法分享

    mssql sqlserver 对不同群组对象进行聚合计算的方法分享 原文:mssql sqlserver 对不同群组对象进行聚合计算的方法分享 摘要: 下文讲述通过一条sql语句,采用over关键字 ...

  2. oracle sql为null值,在SQL Server Oracle MySQL当数据库中查出某值为NULL怎么办

    在SQL Server Oracle MySQL当数据库中查出某值为NULL怎么办? 1.MSSQL: ISNULL() 语法 ISNULL ( check_expression , replacem ...

  3. Mybatis为什么查询结果为空时返回值为NULL或空集合?

    以下内容如有错误欢迎指出,有则改之无则加勉~ 一行数据记录如何映射成一个 Java 对象,这种映射机制是 MyBatis 作为 ORM 框架的核心功能之一,也是我们这篇文章需要学习的内容 开始前我们先 ...

  4. js在post后台接口的时候,一行代码完成删除对象中所有值为null、undefined或为空字符串““的属性

    var d= {a: 1,b: null,c: 3,d: undefined };Object.keys(d).forEach(k=>d[k]==null&&delete d[k ...

  5. ItemAdding实现数据验证--中文字段,properties.AfterProperties值为null的问题

    最近写事件接收器,发现中文字段如果直接用properties.AfterProperties["申请人"]这样获取的值为null,无法得到值.后拉忽然发现用英文字段可以得到值.难道 ...

  6. C#里XML(JSON)序列化时,自动隐藏值为Null的成员的输出

    原文:C#里XML(JSON)序列化时,自动隐藏值为Null的成员的输出 从StackOverflow里找到的答案.发现对最新的Newtownsoft的JSON序列化也同样适用. https://st ...

  7. mysql length函数无法对字段值为null的筛选

    mysql中length(articletype)<5 不包含articletype 的值为null

  8. .net mvc web api 返回 json 内容时过滤值为null的属性

    1.响应内容(过滤前) {"msg":"初始化成功!","code":"","success":tr ...

  9. Android --- 控件属性的属性值为 @null

    1.控件属性值为 @null (1)RadioButton里面的属性android:button="@null" 是去掉前面的圆点 (2)android:background=&q ...

最新文章

  1. Opengl-光照章节学习成果
  2. 【Java 虚拟机原理】线程栈 | 栈帧 | 局部变量表 | 反汇编字节码文件 | Java 虚拟机指令手册 | 程序计数器
  3. Hyperledger Fabric相关文件解析
  4. python常用方法总结-Python3常用函数、方法总结(持续更新…)
  5. Sklearn参数详解—SVM
  6. WinCE驱动的动态加载
  7. opencv4.4.0函数手册_【文档更新】发布100ask_imx6ull用户手册V2.0和全新烧写工具
  8. PHP学习总结(3)——PHP入门篇之PHP的echo语句
  9. html图片下方会有一像素,div里嵌套了img底部会有白块问题和图片一像素问题解决 - Macchiato...
  10. (转)android连网详解
  11. 进制转换C语言实现(十进制转换为任意进制)
  12. linux内核堆栈空间设置,linux内核堆栈设置过程
  13. 电路设计_物联网芯片资讯——GPRS
  14. 物质模拟器4.0版 改了bug,爆炸时也可移动
  15. 学习前端比较好的网站
  16. AV-TEST给出Android平台最佳防毒软件排名
  17. 八位计算机最小二进制,八位二进制补码最小值
  18. fails sanity check错误的解决方法
  19. Excel VBA工程密码破解程序 (绝对可以破解)
  20. 韩国计算机专业,韩国计算机专业发展前瞻

热门文章

  1. Maven-EclipseEE使用Maven构建Java web项目从0到1
  2. Shell echo-使用echo实现更复杂的输出格式控制
  3. 计算机虚拟化技术论文,【计算机网络论文】虚拟技术计算机网络论文(共1775字)...
  4. oracle v$system_event,45.Oracle杂记——Oracle常用动态视图v$system_event
  5. 软件测试 图覆盖,软件测试(四)——图覆盖
  6. python调用centos防火墙_Centos7防火墙:Firewall基本使用命令,设置防火墙规则
  7. pc双网卡实现路由转发_route命令如何使用?如何利用route命令实现内外网切换?...
  8. 微信小程序签名(横屏+竖屏)
  9. 计算机系统结构广义定义,《计算机系统结构》电子教案(清华版).ppt.ppt
  10. java c语言union转换_C语言联合体(union)的使用方法及其本质-union