MySQL 8 - 处理 NULL 值 - is null、=null、is not null、<> null 、!= null

一时失言乱红尘 2024-02-21 11:02 177阅读 0赞

处理 NULL 值:

  1. IS NULLIS NULL 用于检查一个列是否为 NULL。例如,如果查找一个表中某一列的值为 NULL 的行,可以使用以下语法:

    1. SELECT * FROM table_name WHERE column_name IS NULL;
  2. IS NOT NULLIS NOT NULL 用于检查一个列是否不为 NULL。例如,如果查找一个表中某一列的值不为 NULL 的行,可以使用以下语法:

    1. SELECT * FROM table_name WHERE column_name IS NOT NULL;
  3. = NULL 、!= NULL 和 <> NULL:在 MySQL 中,使用 =!=<> 操作符来比较 NULL 值是不推荐的,因为 NULL 有特殊的语义。在 SQL 中,任何与 NULL 进行比较的结果都是 NULL,而不是 true 或 false。因此,如果使用 = NULL!= NULL<> NULL 来检查是否为 NULL 或不为 NULL,它们不会按预期工作。

    应该使用 IS NULLIS NOT NULL 来处理 NULL 值,而不是 = NULL!= NULL<> NULL。例如:

    1. SELECT * FROM table_name WHERE column_name IS NULL;
    2. SELECT * FROM table_name WHERE column_name IS NOT NULL;

总结:在MySQL中,使用 IS NULLIS NOT NULL 来检查 NULL 值,而避免使用 = NULL<> NULL,因为前者能够正确处理 NULL 值,而后者不会按预期工作。

发表评论

表情:
评论列表 (有 0 条评论,177人围观)

还没有评论,来说两句吧...

相关阅读

    相关 MySQL NULL 处理

    MySQL使用 SQL SELECT 命令及 WHERE 子句来读取数据表中的数据,但是当提供的查询条件字段为 NULL 时,该命令可能就无法正常工作。 为了处理这种情况,M

    相关 MySQLNULLNOT NULL详解

    之前看到有人问到 PHPHub 迁移数据库文件中 nullable 和索引的问题,相信很多用了 MySQL 很久的人(特别是平时过多关注业务开发的人),对这两个字段属性...