2015-02-10 52 views
0

我必须写在SQL这是这样的情况下表达,CASE表达式可以具有2个结果值

情况下条件

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填充列中不同的表,并且具有按照上述条件推导。

我的问题是 - 因为我想从我的案例表达式中的2个单独的领域,将单个案例给我2个结果字段值。或者我必须为它编写2个不同的案例表达式。

+2

号就像在SQL中的所有表达式,一个'case'语句只返回一个值。 – 2015-02-10 22:08:34

+0

感谢muh回复 – Pallavi 2015-02-11 04:14:40

回答

0

如果你的DBMS支持行类型,也许这对你的作品:

select case when a = 1 then (1,2) else (3,4) end from testtable; 

SQL Validator说:

The following feature outside Core SQL-2003 is used: 

T051, "Row types"