广告
返回顶部
首页 > 资讯 > 数据库 >SQL中IS NOT NULL与!=NULL的区别是什么
  • 211
分享到

SQL中IS NOT NULL与!=NULL的区别是什么

2024-04-02 19:04:59 211人浏览 独家记忆
摘要

今天就跟大家聊聊有关sql中IS NOT NULL与!=NULL的区别是什么,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。查询一: SELEC

今天就跟大家聊聊有关sql中IS NOT NULL与!=NULL的区别是什么,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。

查询一: SELECT * FROM test WHERE data=NULL
查询二: SELECT * FROM test WHERE data<>NULL

而按照非ANSI SQL标准,查询1将返回第二行,查询2返回1、3行。

这是因为在SQL中,NULL是一种特有的数据类型,其等价于没有任何值、是未知数。NULL与0、空字符串、空格都不同。
ANSI SQL标准中取得Null值的行需要用下面的查询:

复制代码 代码如下:


SELECT * FROM test WHERE data IS NULL


由此可见非ANSI SQL标准中data=NULL等同于data IS NULL,data<>NULL等同于data IS NOT NULL。

所以我们要牢记:默认情况下做比较条件时使用关键字“is null”和“is not null”。

如果你一定要使用!= null来进行条件判断,需要加上这个命令语句:SET ANSI_NULLS OFF,这时数据库进入ANSI SQL非标准模式,你会发现IS NOT NULL 和 != null 是等效的了。

这里使用的是模式切换命令SET ANSI_NULLS[ON/OFF]。ON值采用ANSI SQL严格标准,OFF值采用非标准兼容模式。另外SET ANSI_DEFAULTS [ON/OFF]命令也可以实现标准的切换,只是这个命令控制的是一组符合SQL-92标准的设置,其中就包括Null值的标准。

默认情况下,数据库管理程序(DB-Library)是SET ANSI_NULLS为OFF的。但是我们的大多数应用程序,都是通过ODBC或者OLEDB来访问数据库的,作为一种开放兼容的数据库访问程序,或许是兼容性的考虑,SETANSI_NULLS值设置为ON。这样一来带来的一些问题是需要注意的。像存储过程或者自定义函数这样的应用程序都是基于DB-Library的,默认情况下,SETANSI_NULLS为OFF,并且在这样的程序中,不能使用SETANSI_NULLS在一个环境中修改规则,只能修改数据库配置参数。

例如下面这种情况:你的应用程序使用ADODB来访问数据库,采用OleDb或者ODBC数据提供程序。对于查询一: SELECT * FROM test WHERE data=NULL
我们可以直接发送命令取得查询结果集,也可把它放到存储过程当中。但二者查询结果不同。若直接使用查询命令,不返回任何行;而如果访问存储过程,返回第2行的数据。

看完上述内容,你们对SQL中IS NOT NULL与!=NULL的区别是什么有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注编程网数据库频道,感谢大家的支持。

您可能感兴趣的文档:

--结束END--

本文标题: SQL中IS NOT NULL与!=NULL的区别是什么

本文链接: https://www.lsjlt.com/news/56988.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • SQL中IS NOT NULL与!=NULL的区别是什么
    今天就跟大家聊聊有关SQL中IS NOT NULL与!=NULL的区别是什么,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。查询一: SELEC...
    99+
    2022-10-18
  • 【MySQL】 IS NOT NULL 和 != NULL 的区别?
    背景 最近在开发小伙伴的需求,遇到了一个数据库统计的问题, is not null 结果正确 !=null 结果就不对,然后就激发了获取真理的想法,那必须的查查 咋回事嘞? 开整 在用MySQL的过...
    99+
    2023-09-11
    mysql 数学建模 数据库
  • MySQL null与not null和null与空值''''的区别详解
    相信很多用了MySQL很久的人,对这两个字段属性的概念还不是很清楚,一般会有以下疑问: 我字段类型是not null,为什么我可以插入空值 为毛not null的效率比null高 判断字段不为空的时候,...
    99+
    2022-05-28
    MySQL null与not null MySQL null与空值''''''''
  • JS基础中undefined与null的区别是什么
    这期内容当中小编将会给大家带来有关JS基础中undefined与null的区别是什么,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。在JavaScript开发中,被人问到:...
    99+
    2022-10-19
  • javascript中undefined与null的区别
      null和undefined基本是同义的,只有一些细微的差别。 null表示"没有对象",即该处不应该有值。典型用法是: (1) 作为函数的参数,...
    99+
    2022-11-13
  • Oracle中Null与空字符串的区别是什么
    本篇文章为大家展示了Oracle中Null与空字符串的区别是什么,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。含义解释: 问:什么是NULL? ...
    99+
    2022-10-18
  • ObjectUtils.isEmpty()和null的区别是什么
    这篇文章主要讲解了“ObjectUtils.isEmpty()和null的区别是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“ObjectUtils.isEmpty()和null的区别是...
    99+
    2023-06-29
  • mysql中is null指的是什么
    这篇文章主要介绍“mysql中is null指的是什么”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“mysql中is null指的是什么”文章能帮助大家解决问题。 ...
    99+
    2023-05-25
    mysql is null
  • php中null和empty的区别是什么
    本文操作环境:Windows10系统、PHP7.1版、Dell G3电脑。php中null和empty的区别是什么null 表示表示一个变量没有值。一个变量为null有三种情况:被赋值为 NULL 。 尚未被赋值。 被 unset() 。e...
    99+
    2021-01-09
    PHP
  • vbs中Empty和Null的区别是什么
    这篇文章主要讲解了“vbs中Empty和Null的区别是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“vbs中Empty和Null的区别是什么”吧!empty关键字指用于指明未初始化的变...
    99+
    2023-06-08
  • JavaScript中null和undefined的区别是什么
    这篇文章给大家介绍JavaScript中null和undefined的区别是什么,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。网上有很多关于null和undefined区别的论述,看似讲了很多知识,但又好像没什么用,无...
    99+
    2023-06-26
  • C++中NULL与nullptr的区别有什么不同
    这篇文章主要介绍C++中NULL与nullptr的区别有什么不同,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!一、C程序中的NULL在C语言中,NULL通常被定义为:#define NULL ((void *)0)所...
    99+
    2023-06-15
  • java中的空串与null的区别
    区别:空串是一个已经实例化之后的对象,是有内存空间的,只不过内存空间中存储的值为空;而null表示的是没有实例化的对象,不占内存空间。String aaa = "";//空串 String bbb=null; //null值在线视频教程推荐...
    99+
    2020-04-26
    java入门 java 空串 null 区别
  • Mysql中NULL和Empty String的区别是什么
    这期内容当中小编将会给大家带来有关Mysql中NULL和Empty String的区别是什么,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。create tabl...
    99+
    2022-10-18
  • C++中NULL与nullptr的区别对比
    前言 在编写C程序的时候只看到过NULL,而在C++的编程中,我们可以看到NULL和nullptr两种关键字,其实nullptr是C++11版本中新加入的,它的出现是为了解决NULL...
    99+
    2022-11-12
  • Oracle与PostgreSQL的NULL和索引使用区别是什么
    这篇文章主要讲解了“Oracle与PostgreSQL的NULL和索引使用区别是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Oracle与Postgr...
    99+
    2022-10-18
  • NULL与MySQL空字符串有什么区别
    本篇内容主要讲解“NULL与MySQL空字符串有什么区别”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“NULL与MySQL空字符串有什么区别”吧!  下述语句是...
    99+
    2022-10-18
  • MySQL的空值和NULL的区别是什么
    这篇文章给大家分享的是有关MySQL的空值和NULL的区别是什么的内容。小编觉得挺实用的,因此分享给大家做个参考。一起跟随小编过来看看吧。从本质上区别:1、空值不占空间2、null值占空间通俗的讲:空值就像...
    99+
    2022-10-18
  • javascript中undefined与null的区别有哪些
    今天小编给大家分享一下javascript中undefined与null的区别有哪些的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一...
    99+
    2023-07-02
  • MySQL ISNULL() 函数和 IS NULL 运算符有什么区别?
    显然,ISNULL()函数和IS NULL运算符没有任何区别,并且共享一些共同的行为。我们唯一能看到的区别是它们的语法。ISNULL()函数将表达式作为其参数,而IS NULL比较运算符将表达式放在其左侧。否则,如果表达式为NULL,则两者...
    99+
    2023-10-22
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作