SQL内でCASEを記述する、条件分岐する

| | コメント(0)

select
case
when hoge = 1 then '1でした'
when hoge = 2 then '2でした'
end as hogecase from hogetable

わかりにくい例ですが、case~endがまぁcaseブロック、when以降が条件、then以降が結果ですね。コレをしらないと、ロジック側でループさせながらぐりぐり判定させないといけないのですが、知っていることによって大幅にロジックを減らせます。

SQLServerやPostgreSQL限定ではなく、SQL-92に載っている手法なので、他のDBでも利用可能です。知っておくべき、活用すべきでしょう。

カテゴリ

,

コメントする

このブログ記事について

このページは、ハセテツが2008年1月 5日 08:39に書いたブログ記事です。

ひとつ前のブログ記事は「C#で日付をフォーマット指定して文字列にする」です。

次のブログ記事は「C#で文字列が整数値か判定する」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。