gpt4 book ai didi

mysql - 返回空值 IN 子句 mysql

转载 作者:行者123 更新时间:2023-11-29 01:27:18 25 4
gpt4 key购买 nike

当数据库中没有数据时打印not found。例如在我的数据库中我没有 56443 因此它应该打印 'not found'

SELECT uid, (CASE WHEN (u.uid = null) THEN 'not found' ELSE 'found' END) as result
FROM (SELECT uid
FROM users
WHERE uid IN (1,2,56443,3)) as u;

得到结果如下

+--------+--------+
| uid | result|
+--------+--------+
| 1 | found |
| 2 | found |
| 3 | found |
+--------+--------+

我还期待 not found56443

最佳答案

您需要使用不同的方法。您将需要使用 UNION ALL 创建一个包含所有值的内联 View ,然后将其与用户表左连接:

SQL Fiddle

查询 1:

SELECT a.uid, (CASE WHEN (u.uid is null) THEN 'not found' ELSE 'found' END) as     result
FROM (select 1 as UID FROM dual
UNION ALL
select 2 as UID FROM dual
UNION ALL
select 56443 as UID FROM dual
UNION ALL
select 3 as UID FROM dual) as a
LEFT JOIN users u on a.uid = u.uid

[结果]:

|   UID |    result |
|-------|-----------|
| 1 | found |
| 2 | found |
| 3 | found |
| 56443 | not found |

关于mysql - 返回空值 IN 子句 mysql,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36324503/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com