我想做类似的事情:
insert into Table(a, b, c)
select a, b, 1 from OtherTable
where a > 0
但 c 是基于where子句的某个条件的Enum值。
我希望最终结果与之类似(即使这不起作用):
insert into Table(a, b, c)
select a, b, x from OtherTable, YetAnotherTable
where a > 0 AND (IF a=b THEN x = 'Enum1' ELSE x = 'Enum2' ENDIF)
你认为在一个声明中可以做到这样吗?
答案 0 :(得分:1)
您可以使用case
表达式:
insert into Table(a, b, c)
select a,
b,
CASE WHEN a = b THEN 'Enum1' ELSE 'Enum2' END
from OtherTable, YetAnotherTable
where a > 0