在MySQL中使用CASE语句显示空值的自定义名称

为此,您可以使用CASE WHEN语句。让我们首先创建一个表-

mysql> create table DemoTable
   -> (
   -> Name varchar(20)
   -> );

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

mysql> insert into DemoTable values('Chris');
mysql> insert into DemoTable values('');
mysql> insert into DemoTable values('David');
mysql> insert into DemoTable values('');

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

mysql> select *from DemoTable;

这将产生以下输出-

+-------+
| Name  |
+-------+
| Chris |
|       |
| David |
|       |
+-------+
4 rows in set (0.00 sec)

以下是查询以显示空值的自定义名称-

mysql> select case trim(ifnull(Name,''))
   -> when '' then 'Carol Taylor'
   -> else
   -> Name
   -> end as Name
   -> from DemoTable;

这将产生以下输出-

+--------------+
| Name         |
+--------------+
| Chris        |
| Carol Taylor |
| David        |
| Carol Taylor |
+--------------+
4 rows in set (0.03 sec)