mysql字段为null为何不能使用!=

 更新时间:2024年05月01日 08:55:11   作者:sxylalala11  
这篇文章主要介绍了mysql字段为null为何不能使用!=问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

mysql字段为null不能使用!=

数据库表中某一字段(mark)默认值为NULL,进行where语句查询时mark!=‘xxxx’,并不能将字段为NULL的数据查询出来。

1、mysql中空值不占空间,null值占空间。

2、当使用 IS NOT NULL 或者 IS NULL 时,只能查出字段中没有不为NULL的或者为 NULL 的,不能查出空值。

3、判断NULL 用IS NULL 或者 is not null,判断空字符用 =’‘或者<>’'来进行处理。

4、在进行count()统计某列的记录数的时候,如果采用的NULL值,会被系统自动忽略掉,但是空值是会进行统计到其中的。

5、MySql中如果某一列中含有NULL,那么包含该列的索引就无效了。这一句不是很准确。(???)

6、对于MySQL特殊的注意事项,对于timestamp数据类型,如果往这个数据类型插入的列插入NULL值,则出现的值是当前系统时间。插入空值,则会出现 0000-00-00 00:00:00

7、NULL值到非NULL的更新无法做到原地更新,更容易发生索引分 裂,从而影响性能。(???)

如果想查出字段为null的数据,可以使用:

SELECT * FROM A WHERE B1 != 1 OR B1 is Null
SELECT * FROM A WHERE IFNULL(B1,'') != 1

set ANSI_NULLS off,这时你会发现IS NOT NULL 和 != null 是等效的

mysql语句“!=“使用注意事项

当我们使用mysql的!=的时候,要注意一点的是!=只会筛选该字段非空的数据,如果查询的表中有字段为null,这些数据都不会被查询出来,即时他!=某个数据

例如:

select * from test where type != 2

test表中  type 存在  1 ,2,null

那么该查询语句只会筛选出type为1的数据,即使 null也不等于2

建议使用:

select * from test where (type != 2 or type is null)

或者

select * from test where ifnull(type,"")!= 2

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • MySQL分页分析原理及提高效率

    MySQL分页分析原理及提高效率

    这篇文章主要介绍了MySQL分页分析原理及提高效率的相关资料,需要的朋友可以参考下
    2017-05-05
  • 如何清除mysql注册表

    如何清除mysql注册表

    在本篇文章里小编给大家整理的是关于如何清除mysql注册表的相关知识点内容,有需要的朋友们可以参考下。
    2020-08-08
  • MySQL系列教程小白数据库基础

    MySQL系列教程小白数据库基础

    这篇文章主要为大家介绍了MySQL系列中的数据库基础,非常适合数据库小白的入门基础篇,详细的讲解了数据库的基本概念以及基础命令及操作示例,有需要的朋友可以借鉴参考下
    2021-10-10
  • 深入了解mysql的4种常用、重要的数据类型

    深入了解mysql的4种常用、重要的数据类型

    对于在开发大型电子商务网站时,如果碰到有限的硬件和系统环境情况下,合理的数据库表结构的设计是必不可少的
    2014-05-05
  • mysql增量备份及恢复的操作方法

    mysql增量备份及恢复的操作方法

    增量备份是在全备或上次增量备份基础上,只备份新增或修改的文件,减少数据量和时间,binlog记录数据库变更,重启时创建新日志文件,增量备份复杂但减轻服务器负担,而binlog帮助精确恢复数据
    2023-09-09
  • windows环境下mysql的解压安装及备份和还原

    windows环境下mysql的解压安装及备份和还原

    这篇文章主要介绍了windows环境下mysql的解压安装及备份和还原,需要的朋友可以参考下
    2017-09-09
  • MYSQL中的json数据操作代码

    MYSQL中的json数据操作代码

    这篇文章主要介绍了MYSQL中的json数据操作,主要包括基础查询操作,JSON函数操作,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-09-09
  • 最新版MySQL5.7.19解压版安装指南

    最新版MySQL5.7.19解压版安装指南

    这篇文章主要介绍了最新版MySQL5.7.19解压版安装指南,需要的朋友可以参考下
    2017-08-08
  • 在Linux系统的命令行中为MySQL创建用户的方法

    在Linux系统的命令行中为MySQL创建用户的方法

    这篇文章主要介绍了在Linux系统的命令行中为MySQL创建用户的方法,包括对所建用户的权限管理,需要的朋友可以参考下
    2015-06-06
  • MySQL日志的详细分析实例

    MySQL日志的详细分析实例

    MySQL日志记录了MySQL数据库日常操作和错误信息,下面这篇文章主要给大家介绍了关于MySQL日志的详细分析,文中通过示例代码介绍的非常详细,需要的朋友可以参考下
    2022-04-04

最新评论