SQL语句中不等号(!=,<>)
2016-06-03 11:08
2436 查看
转自:http://www.cnblogs.com/yongtaiyu/archive/2013/01/16/2863118.html
关于SQL命令中不等号(!=,<>)
比较两个表达式(比较运算符)。当比较非空表达式时,如果左边操作数的数值不等于右边的操作数,则结果为 TRUE;否则结果为 FALSE。如果两个操作数中有一个或者两个都为 NULL,并且 SET ANSI_NULLS 被设置为 ON,则结果为 NULL。如果 SET ANSI_NULLS 被设置为 OFF,则当一个操作数为 NULL 时结果为 FALSE,当两个操作数都为 NULL 时结果为 TRUE。
问题:t-sql操作符中,不等号(!=,<>),查询出来的结果集不包含有当前字段为null的数据?
如下一个表ud_fgdj_jbxx有三个字段ztlx ,gmlx ,tslx,有如下数据:
ztlx gmlx tslx
--------------------
个体 NULL NULL
内资 02 NULL
内资 NULL wxqy
内资 02 NULL
使用如下SQL查询的时候不会返回任何结果集
select * from ud_fgdj_jbxx where tslx<>'wxqy'
select * from ud_fgdj_jbxx where tslx!='wxqy'
如果把表的数据变为如下:
ztlx gmlx tslx
--------------------
个体 NULL NULL
内资 02 NULL
内资 NULL wxqy
内资 02 NULL
内资 02 yty
内资 02
再执行如下SQL查询
select * from ud_fgdj_jbxx where tslx<>'wxqy'
select * from ud_fgdj_jbxx where tslx!='wxqy'
会返回结果集:
ztlx gmlx tslx
--------------------
内资 02 yty
内资 02
同时测试slq查询:select * from ud_fgdj_jbxx where tslx<>null
1、SET ANSI_NULLS 被设置为 ON
也不会返回任何结果集
2、SET ANSI_NULLS 被设置为 off
返回tslx不为null 的数据
结论:t-sql操作符中,不等号(!=,<>),查询出来的结果集不包含有当前字段为null的数据
关于SQL命令中不等号(!=,<>)
比较两个表达式(比较运算符)。当比较非空表达式时,如果左边操作数的数值不等于右边的操作数,则结果为 TRUE;否则结果为 FALSE。如果两个操作数中有一个或者两个都为 NULL,并且 SET ANSI_NULLS 被设置为 ON,则结果为 NULL。如果 SET ANSI_NULLS 被设置为 OFF,则当一个操作数为 NULL 时结果为 FALSE,当两个操作数都为 NULL 时结果为 TRUE。
问题:t-sql操作符中,不等号(!=,<>),查询出来的结果集不包含有当前字段为null的数据?
如下一个表ud_fgdj_jbxx有三个字段ztlx ,gmlx ,tslx,有如下数据:
ztlx gmlx tslx
--------------------
个体 NULL NULL
内资 02 NULL
内资 NULL wxqy
内资 02 NULL
使用如下SQL查询的时候不会返回任何结果集
select * from ud_fgdj_jbxx where tslx<>'wxqy'
select * from ud_fgdj_jbxx where tslx!='wxqy'
如果把表的数据变为如下:
ztlx gmlx tslx
--------------------
个体 NULL NULL
内资 02 NULL
内资 NULL wxqy
内资 02 NULL
内资 02 yty
内资 02
再执行如下SQL查询
select * from ud_fgdj_jbxx where tslx<>'wxqy'
select * from ud_fgdj_jbxx where tslx!='wxqy'
会返回结果集:
ztlx gmlx tslx
--------------------
内资 02 yty
内资 02
同时测试slq查询:select * from ud_fgdj_jbxx where tslx<>null
1、SET ANSI_NULLS 被设置为 ON
也不会返回任何结果集
2、SET ANSI_NULLS 被设置为 off
返回tslx不为null 的数据
结论:t-sql操作符中,不等号(!=,<>),查询出来的结果集不包含有当前字段为null的数据
相关文章推荐
- mysql 判断表字段或索引是否存在 - 举一反三
- mysql数据库order by语句 null 处理
- 14.2.1 MySQL and the ACID Model
- 14.2.1 MySQL and the ACID Model
- 14.2.1 MySQL and the ACID Model
- [MongoDB]安装MongoDB遇到问题
- linux 安装 redis3.0
- linux 安装 redis3.0
- MySQL主从复制原理
- Redis 未授权访问配合 SSH key 文件利用分析
- 64位Windows下安装Redis教程
- spring-session,利用redis存储session,解决集群共享session的问题
- pl/sql access violation问题
- mysql The InnoDB memory heap is disabled 问题决解
- oracle批量insert
- 【51CTO学院三周年】我的在51CTO学院学习的感想
- 【Oracle XE系列之一】Windows 7 64位安装Oracle XE(32位)数据库(REG_XE报错、字符集、修改8080端口等)
- sql server的全文索引的使用
- SQL SERVER 中如何用脚本管理作业
- memcached.properties