MySQL で条件集計はCASE 文が便利

投稿者: | 2014/04/07
SELECT 
	COUNT( CASE WHEN col0 = 1 THEN 1 ELSE null END ) AS hoge, 
	COUNT( CASE WHEN col0 = 2 THEN 1 ELSE null END ) AS piyo, 
	COUNT( CASE WHEN col0 > 2 THEN 1 ELSE null END ) AS fuga
FROM my_table;

恥ずかしながら、これまで個別にWHERE で集計してJOIN しておりました。

コメントを残す

メールアドレスが公開されることはありません。

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください