如何在 MySQL 中检查列是否为空或为空值?
要检查列是否为空或为空值,我们可以使用带有 IS NULL 的 WHERE 子句,对于空值,我们可以使用条件 ' ',即空格。所需的步骤如下:首先,使用 CREATE 命令 创建一个表,如下所示:
mysql> CREATE table ColumnValueNullDemo -> ( -> ColumnName varchar(100) -> ); Query OK, 0 rows affected (0.61 sec)
使用 INSERT 命令 将空值插入表中。如下所示:
mysql> INSERT into ColumnValueNullDemo values(' '); Query OK, 1 row affected (0.14 sec)
之后,使用 SELECT 命令 显示表记录。如下所示:
mysql> SELECT * from ColumnValueNullDemo;
执行上述查询后,我们将得到以下输出:
+-------------------+ | ColumnName | +-------------------+ | | +-------------------+ 1 row in set (0.00 sec)
要检查列是否为空值或为空,语法如下:
SELECT * FROM yourTableName WHERE yourSpecificColumnName IS NULL OR yourSpecificColumnName = ' ';
当列为空时,可以使用 IS NULL 约束,当有空值时,使用符号 (' ')。
现在,使用上述语法的查询如下所示:
mysql> SELECT * FROM ColumnValueNullDemo WHERE ColumnName IS NULL OR ColumnName = ' ';
执行上述查询后,获得的输出为。
+------------+ | ColumnName | +------------+ | | +------------+ 1 row in set (0.00 sec)
由于第二个条件对空值成立,因此得到此输出。
现在,使用 INSERT 命令将 NULL 值插入表中,如下所示:
mysql> INSERT into ColumnValueNullDemo values(); Query OK, 1 row affected (0.14 sec)
使用 SELECT 命令查看表的內容,如下所示:
mysql> SELECT * from ColumnValueNullDemo;
执行上述查询后,获得以下输出:
+------------+ | ColumnName | +------------+ | | | NULL | +------------+ 2 rows in set (0.00 sec)
现在,应用检查空值或空值的条件:
mysql> SELECT * FROM ColumnValueNullDemo WHERE ColumnName IS NULL OR ColumnName = '';
获得两行表记录作为输出,因为两个条件都成立。
+------------+ | ColumnName | +------------+ | | | NULL | +------------+ 2 rows in set (0.00 sec)
广告