我有以下 - 简化 - 查询:
SELECT id
FROM table_x
UNION ALL
SELECT 0 AS id
但是,我只想附加 UNION 部分,以防查询的第一部分返回至少 1 个结果,例如:
table_x 包含一个条目 (id = 1):
table_x: 1
Current and desired result: 1, 0
table_x 为空:
table_x: empty
Current result: 0
Desired result: empty
有什么办法可以在查询中实现这一点吗?预先非常感谢您。
最佳答案
只要您的表存在。你可以做这样的事情。
SELECT
IF ( a is NULL, NULL, CONCAT(a,",",b))
FROM(
SELECT
(SELECT * From myTable WHERE id = 2) a
,(SELECT 0) b
) C
结果为空
id = 1 的结果 将会是
IF ( a is NULL, NULL, CONCAT(a,",",b))
1,0
关于mysql - 如何仅在某些情况下应用 UNION (MySQL),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58312957/