jump to navigation

SQLメモ CASE文 6月 15, 2009

Posted by hyhy in 技術情報.
Tags:
trackback

自分メモ。

SELECT
field1,
CASE WHEN ISNULL(start_date,’1900-01-01 0:00:00′) > ISNULL(end_date,’1900-01-01 0:00:00′)
THEN start_date ELSE start_date END AS sort_date
FROM
table1
WHERE
a=1

CASE文の入れ子も可能で、THENの後ろにCASE式を入れることもできる。

また、日付の比較において、片方がNULLだと条件式が意図したとおりにいかないので、
ISNULLでNULL時の値を設定しておくとよい。

広告
%d人のブロガーが「いいね」をつけました。