在 MySQL 新列中比较 NULL 值并显示这些值的值 1?


为此,请使用 IF() 和 IS NULL 属性。让我们先创建一个表格 -

mysql> create table DemoTable
(
   Name varchar(100),
   CountryName varchar(100)
);
Query OK, 0 rows affected (0.70 sec)

使用插入命令在表格中插入一些记录 -

mysql> insert into DemoTable values('Chris','US');
Query OK, 1 row affected (0.14 sec)
mysql> insert into DemoTable values('Mike',NULL);
Query OK, 1 row affected (0.12 sec)
mysql> insert into DemoTable(Name) values('David');
Query OK, 1 row affected (0.38 sec)
mysql> insert into DemoTable values('Bob','AUS');
Query OK, 1 row affected (0.45 sec)

使用 select 语句显示表格中的所有记录 -

mysql> select *from DemoTable;

将生成以下输出 -

+-------+-------------+
| Name  | CountryName |
+-------+-------------+
| Chris | US          |
| Mike  | NULL        |
| David | NULL        |
| Bob   | AUS         |
+-------+-------------+
4 rows in set (0.00 sec)

以下查询用于比较 NULL 值并为 MySQL 新列中的这些值显示值 1 -

mysql> select Name,CountryName,If (CountryName IS NULL,1,0) AS CountDemo from DemoTable;

将生成以下输出 -

+-------+-------------+-----------+
| Name  | CountryName | CountDemo |
+-------+-------------+-----------+
| Chris | US          |         0 |
| Mike  | NULL        |         1 |
| David | NULL        |         1 |
| Bob   |  AUS        |         0 |
+-------+-------------+-----------+
4 rows in set (0.00 sec)

更新于: 27-Sep-2019

64 次浏览

开启你的 职业

通过完成课程取得认证

开始
广告