2016-06-23 11 views
0

私はVB6コードをSQL文に変換して変換を確認する助けを頼みたいと思います。IIFをCASEに変換 - ヘルプレビューの変換

VB6

IIF([Type] = 1, 26, IIF([Type] = 2, 27, 28)) 

SQL

CASE 
     WHEN [Type] = 1 THEN 26 
     ELSE 
      CASE 
       WHEN [Type] = 2 THEN 27 
       ELSE 28 
      END 
    END 
+2

それはSQL – mohan111

+1

に「内側」 'case'の必要はありませ完璧に動作しません:' CASE WHENを[タイプ] = 1それから[タイプ] = 2 THEN 27 ELSE 28 END' – Lamak

+1

はい私は@Lamakに同意します – mohan111

答えて

1

変換はOKですが、よりよい作ることができます。 IIFとは異なり、caseは複数のケースをサポートしているので、自分自身をネスティングから救うことができます。すべての比較は[Type]列上にあるので、これは速記構文を使用する絶好の機会です:

CASE [Type] 
    WHEN 1 THEN 26 
    WHEN 2 THEN 27 
    ELSE 28 
END 
関連する問題