Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
CASE-Mysql上的Null检查_Mysql - Fatal编程技术网

CASE-Mysql上的Null检查

CASE-Mysql上的Null检查,mysql,Mysql,我试图检查这个值,若它为null(并没有显示),我推断出空字符串。我试着: SELECT nullif(order_id, ' ') as order_id FROM label_pass_voucher WHERE order_id = 3447; select CASE WHEN order_id then order_id else ' ' end as order_id FROM label_pass_voucher WHERE order_id = 3447; 它不能推断出什么。我的

我试图检查这个值,若它为null(并没有显示),我推断出空字符串。我试着:

SELECT nullif(order_id, ' ') as order_id FROM label_pass_voucher WHERE order_id = 3447;
select CASE WHEN order_id then order_id else ' ' end as order_id FROM label_pass_voucher WHERE order_id = 3447;
它不能推断出什么。我的错在哪里?提前感谢

使用


这个语法相当于
exp1==null?exp2:exp1

我假设您要查找的查询是:

SELECT IFNULL(order_id, '') AS order_id
FROM label_pass_voucher
WHERE order_id = 3447;
MySQL官方文档:

如果expr1不为NULL,则IFNULL()返回expr1;否则它将返回 expr2

NULLIF()
做了一件稍微不同的事情:

如果expr1=expr2为真,则返回NULL,否则返回expr1。这 与expr1=expr2然后NULL ELSE expr1 END的情况相同

SELECT IFNULL(order_id, '') AS order_id
FROM label_pass_voucher
WHERE order_id = 3447;