話不多說,直接舉例咋用。
先知道一下常用語法:
sum(case 屬性名 when 屬性值1 then 1 else 0 end),意思就是某個屬性下爲屬性值1就加1個數量,否則就作0統計。
看我的表players的長相:
1、統計男生和女生的數量
SELECT sum(CASE gender WHEN 'man' THEN 1 ELSE 0 END) as man_numbers,
sum(case gender when 'woman' then 1 else 0 end) as woman_numbers
from players;
結果:
2、分組下統計:統計不同城市下男生和女生的數量
-- 統計不同城市下男性和女性的數量
SELECT city,sum(CASE gender WHEN 'man' THEN 1 ELSE 0 END) as man_numbers,
sum(case gender when 'woman' then 1 else 0 end) as woman_numbers
from players
group by city;
結果:
下次給我們一份訂單表,表裏面的訂單類型有“機票”和“酒店”,讓我們分開統計什麼機票訂單的數量,酒店訂單的數量,是不是你就會了呢O(∩_∩)O~