我必须在SQL中编写一个case表达式,就像这样,
案件条件
if (T_CD = 'Y')
Case C_CD = 'H3'
set R_ID = 3 and RS_ID = 25
CASE A_FLG = 'N' and Mod = 'D'
set R_ID = 3 and RS_ID = 31
R_ID和RS_ID都填充不同表中的列,并且必须根据上述条件派生。
我的问题是 - 由于我想要在我的case表达式中使用2个单独的字段,因此单个Case会为我提供2个结果字段值。或者我是否必须为它编写2个不同的案例表达式。
答案 0 :(得分:0)
如果您的dbms支持行类型,可能这适用于您:
select case when a = 1 then (1,2) else (3,4) end from testtable;
The following feature outside Core SQL-2003 is used:
T051, "Row types"