如何在 MySQL SELECT 语句中使用 NULL?

mysqlmysqli database

在 MySQL 中,NULL 的长度为 0。在这里,我们将看到如何将 NULL 与 SELECT 语句一起使用。让我们借助 CREATE 命令 − 创建一个表

创建表 −

mysql> CREATE table NullWIthSelect
-> (
-> Name varchar(100)
-> );
Query OK, 0 rows affected (0.62 sec)

以上,我已成功创建了一个表。现在我将借助 INSERT 命令 − 插入一些记录

插入记录 −

mysql> INSERT into NullWIthSelect values('John');
Query OK, 1 row affected (0.16 sec)

mysql> INSERT into NullWIthSelect values('Bob');
Query OK, 1 row affected (0.12 sec)

mysql> INSERT into NullWIthSelect values();
Query OK, 1 row affected (0.18 sec)

mysql> INSERT into NullWIthSelect values('Carol');
Query OK, 1 row affected (0.15 sec)

mysql> INSERT into NullWIthSelect values('');
Query OK, 1 row affected (0.16 sec)

mysql> INSERT into NullWIthSelect values('David');
Query OK, 1 row affected (0.19 sec)

mysql> INSERT into NullWIthSelect values();
Query OK, 1 row affected (0.08 sec)

上面,我插入了 7 条记录,其中一条记录具有空值,两条记录具有空值。其余记录有一些值。

要显示所有记录,我们可以使用 SELECT 命令 −

mysql> SELECT * from NullWIthSelect;

以下是输出 −

+-------+
| Name  |
+-------+
| John  |
| Bob   |
| NULL  |
| Carol |
|       |
| David |
| NULL  |
+-------+
7 rows in set (0.00 sec)

现在,我们可以将 NULL 与 SELECT 语句一起使用,如下所示。

首先,让我们看看语法 −

SELECT * from yourTableNamet where column_name is NULL;

应用上述查询来了解哪个列值为空。查询如下−

mysql> SELECT * from NullWIthSelect where Name is NULL;

以下是输出 −

+------+
| Name |
+------+
| NULL |
| NULL |
+------+
2 rows in set (0.00 sec)

现在,我们可以获取NULL值的长度,即0。查询如下 −

mysql> SELECT count(Name) from NullWIthSelect where Name is NULL;

以下是输出 −

+-------------+
| count(Name) |
+-------------+
| 0           |
+-------------+
1 row in set (0.04 sec)

相关文章