如何在mysql中选择带有IF ELSE条件的记录?

问题描述:

如何在mysql中选择带有IF ELSE条件的记录? 我在用户表中的一些记录(请参见下文): ,我想把YAHOO,GMAIL,HOTMAIL的所有recoredS在电子邮件字段,如果雅虎为null,则EMAIL领域将采取的Gmail或Hotmail(我已经在图像中提到我的预期结果)提前如何在mysql中选择带有IF ELSE条件的记录?

+1

是谁的主意将它拆分到不同的列? – zerkms 2012-08-10 01:15:08

+0

我在正常化过程中闻到一个很好的锻炼... – RolandoMySQLDBA 2012-08-10 01:19:08

enter image description here

感谢您想聚结功能:

select id, name, coalesce(yahoo, gmail, hotmail) as email 
from t 

COALESCE返回第一个非NULL值。

+0

你的回答比我的更简洁。 +1 !!! – RolandoMySQLDBA 2012-08-10 20:58:37

SELECT id,name, 
    IFNULL(yahoo,IFNULL(gmail,hotmail)) email 
FROM UserTable; 
+0

非常感谢您的回复。 它将两个colomn工作的情况下, 但如果我有multiplecolomn如Gmail,Hotmail服务,MAC等呢? – vin 2012-08-10 01:48:48