我有两个要与MySQL函数COALESCE()比较的字段。例如,COALESCE(Field1,Field2)。问题是,Field1有时为空,但不为null;因为它不是nullCOALESCE(),所以即使它为空,也选择Field1。在这种情况下,我需要它来选择Field2。
COALESCE(Field1,Field2)
COALESCE()
我知道我可以在查询中编写if-then-else(CASE)语句来检查这一点,但是是否有一个不错的简单函数,例如COALESCE()用于空白但非空字段?
SELECT IFNULL(NULLIF(Field1,’‘),Field2)
如果Field1为空,则NULLIF返回NULL,如果非空或NULL,则IFNULL返回Field1,否则返回Field2。