如果没有返回行,如何返回默认值 [英] How can I return a default values if no rows returned
本文介绍了如果没有返回行,如何返回默认值的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
请不要现在如何在没有返回行时返回默认值,
i尝试COALESCE((),( ))但是coalesce应该包含1列
例如我想返回manu列,如:(选择'12 -12-12',312,1)
我尝试了什么:
Hi,
Please i dont now how to return default values when no rows returned,
i tried COALESCE((),()) but coalesce should contain 1 column
for example i want to return manu column like : (select '12-12-12',312,1)
What I have tried:
SELECT COALESCE( (select CIN from Pers where Id=32323) ,(select '12-12-12',312,'zfsdf'))
推荐答案
您可以使用IF ... ELSE ... END IF
请参阅:M ySQL :: MySQL 5.7参考手册:: 13.6.5.2 IF语法 [ ^ ]
另一种方法是使用UNION
+LIMIT
:
You can useIF ... ELSE ... END IF
See: MySQL :: MySQL 5.7 Reference Manual :: 13.6.5.2 IF Syntax[^]
Another way is to useUNION
+LIMIT
:
(select Col1, Col2, Col3 FROM Pers WHERE Id=32323)
UNION
(SELECT '12-12-12' AS Col1, 312 AS Col2, 'zfsdf' AS Col3)
LIMIT 1;
这篇关于如果没有返回行,如何返回默认值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文