タグ

2010年9月7日のブックマーク (1件)

  • たのしいSQL教室 「CASE式でクロス集計をしよう」編 (2008-10-21)

    回答者ID質問1質問2質問3...質問n性別年齢 のようになっているデータベースがあるとします。これを性別ごとに集計しましょう。 性別カラムには'0','1','NULL'のどれかが入っています。'0'は男性、'1'は女性、'NULL'は無回答です。これはabs(Y染色体の数-1)から求められた数字です。質問nカラムには'2','1','0','-1','-2','-99'のどれかが入っています。順に、「強く賛成」・「賛成」・「どちらでもない(中立)」・「反対」・「強く反対」・「わからない(不明)」です。集計は「賛成」「中立」「反対」「不明」の4単位で行います。正の数であった場合は1でも2でも「賛成」としてカウントすることに注意すると、この集計は以下のSQLで求めることができます。 select sex, case when `q1` > 0 then 'pros' when `q1` =