如果我的值存在,我想返回一行,如果不存在,我想返回另一行。
我得到以下结果:
ID | Row_To_Check
1 | 1
2 | 2
因此,如果 Row_To_Check
列中存在 2
,我想返回它 (ID
2
) ,否则我想返回 ID
1
。
有人可以帮忙吗?这让我难住了。
最佳答案
试试这个:
SELECT COALESCE(Row_To_Check, x) AS Row_To_Check
FROM (SELECT 1 AS x UNION ALL SELECT 2) AS t
LEFT JOIN mytable ON Row_To_Check = 2
WHERE (x = 1 AND Row_To_Check IS NULL) OR (x = Row_To_Check)
关于MySQL返回精确结果或如果没有精确匹配则返回次要结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35484410/