• 締切済み

SQL 条件下の任意文字出力について

お世話になります。 SQLで特定条件の時に任意の文字列を出力したいです。 表1 NO PRICE ___ ___  1   100 2   200 3   300 NOが1のとき、列名を「CODE」として"aaa" NOが2のとき、列名を「CODE」として"bbb" NOが3のとき、列名を「CODE」として"ccc" 出力結果 NO CODE ___ ___  1   aaa 2   bbb 3   ccc こんな感じの結果を得たいです。 どうぞよろしくお願いいたします。

みんなの回答

回答No.2

Decodeってのもあります。 Select NO, Decode( No, 1, 'aaa', 2, 'bbb', 3, 'ccc', '???' ) As "CODE" From TBL CaseとDecodeは似たような関数ですが、Caseの方が多機能です。 でも個人的にはDecodeの方が1列にまとめ易いので好き。 必要に応じて使い分けましょう。

ullr88
質問者

お礼

caseよりも確かに一行にまとまって読みやすいですね! ありがとうございました!

  • yamada_g
  • ベストアンサー率68% (258/374)
回答No.1

select  NO  ,case NO   when 1 then 'aaa'   when 2 then 'bbb'   when 3 then 'ccc'   else null  end CODE from 表1; でどうでしょう。

ullr88
質問者

お礼

caseではこのようになるのですね~。 まだまだ勉強不足ですみませんw ありがとうございました!