table 中没有条目时使用 Case 语句
Using Case Statement when there is no entries in table
我想为左外连接中的字段满足以下条件
如果 field1 = Open 和 field2 ne 3 那么我需要 'OPEN'
否则 'CLOSE'
table 中没有条目,那么我需要 'NEUTRAL'
这是编写的代码,但如果 table3 没有基于下面给出的连接条件的条目,它 returns 要么打开要么关闭但不是中立的。
请帮忙。
SELECT coalesce ( (
case
when tab3.field1 = 'Open' and tab3.field2 <> '3' then 'OPEN'
else 'CLOSE'
end
),'NEUTRAL') as STATUS
FROM table1 AS tab1
LEFT OUTER JOIN table3 AS tab3
on tab1.material = tab3.material
你想要这样的东西:
case
when tab3.material is null then 'NEUTRAL'
when tab3.field1 = 'Open' and tab3.field2 <> '3' then 'OPEN'
else 'CLOSE'
end as Status
我想为左外连接中的字段满足以下条件
如果 field1 = Open 和 field2 ne 3 那么我需要 'OPEN' 否则 'CLOSE' table 中没有条目,那么我需要 'NEUTRAL'
这是编写的代码,但如果 table3 没有基于下面给出的连接条件的条目,它 returns 要么打开要么关闭但不是中立的。 请帮忙。
SELECT coalesce ( (
case
when tab3.field1 = 'Open' and tab3.field2 <> '3' then 'OPEN'
else 'CLOSE'
end
),'NEUTRAL') as STATUS
FROM table1 AS tab1
LEFT OUTER JOIN table3 AS tab3
on tab1.material = tab3.material
你想要这样的东西:
case
when tab3.material is null then 'NEUTRAL'
when tab3.field1 = 'Open' and tab3.field2 <> '3' then 'OPEN'
else 'CLOSE'
end as Status