2016-09-22 16 views
0

Я пытаюсь объединить следующий оператор IIF в SQL Server в инструкции Select. Как я могу это сделать?Как объединить несколько инструкций IIF в SQL Server 2012

IIF(CLMD_TYPE2 = TYPE, ID_ID2, NULL),  
IIF(CLMD_TYPE3 = TYPE, ID_ID2, NULL), 
IIF(CLMD_TYPE4 = TYPE, ID_ID2, NULL), 
IIF(CLMD_TYPE5 = TYPE, ID_ID2, NULL), 
IIF(CLMD_TYPE6 = TYPE, ID_ID2, NULL), 
IIF(CLMD_TYPE7 = TYPE, ID_ID2, NULL), 
IIF(CLMD_TYPE8 = TYPE, ID_ID2, NULL) AS DIAG_CD 

ответ

1

Используйте in:

IIF(type IN (clmd_type1, clmd_type2, ..., clmd_type6), id_id2, null) 
1

Вы можете использовать CASE заявление:

case 
    when type IN (clmd_type1, clmd_type2, clmd_type3, clmd_type4, clmd_type5, clmd_type6) 
     then id_id2 
end