h2database - SQLチップス

トップ > チップス > h2database - SQLチップス
2012-02-13, h2_sql

/tips/java/h2_sql **条件に一致するレコードを数える COUNT集約関数がNULLを数えないことを利用します。数えたい条件に合致するときにNULLでない値を返すCASE WHEN文をCOUNTの引数に与えます。以下の例では、col_date列が今日の日付になっているレコードと、昨日の日付になっているレコードをそれぞれ数えています。

:SELECT :count(CASE datediff('day',col_date,today()) WHEN 0 THEN 1 ELSE null END) AS \"today\", :count(CASE datediff('day',col_date,today()) WHEN 1 THEN 1 ELSE null END) AS \"yesterday\" :FROM t

この記事は役に立ちましたか?