Luk*_*een 17 mysql sql coalesce
我有两个字段,我正在与MySQL的函数COALESCE()进行比较.例如,COALESCE(Field1, Field2)
.问题是,Field1有时是空白但不是null; 因为它不是null COALESCE()
,所以选择Field1,即使它是空白的.在那种情况下,我需要它来选择Field2.
我知道我可以在查询中编写一个if-then-else(CASE)语句来检查这个,但是有一个很好的简单函数,比如COALESCE()
blank-but-not-null字段吗?
And*_*ios 28
SELECT IFNULL(NULLIF(Field1,''),Field2)
Run Code Online (Sandbox Code Playgroud)
如果Field1为空,则NULLIF返回NULL,而如果Iso1不为空,则IFNULL返回Field1,否则返回Field2.
您可以使用CASE
表达式:
CASE WHEN Field1 <> '' THEN Field1 ELSE Field2 END
Run Code Online (Sandbox Code Playgroud)
我知道我在这里参加派对已经很晚了,但是有一种方法可以在使用COALESCE()的同时做到这一点.如果您的值为NULL或'',那么这将起作用.
Select COALESCE(NULLIF(Field1,''), Field2)
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
16874 次 |
最近记录: |