2015-11-11 58 views
-2

我有一個表,它有一個只有2種輸入的列:New和Old。它看起來像這樣:SQL Count和Pivot

old_or_new 
---------- 
    old 
    old 
    new 
    new 
    old 

我想算的新舊號碼,並轉動表看起來像這樣:

column_name | total 
-------------------- 
    old  | 3 
    new  | 2 

我怎樣才能做到這一點?

謝謝!

編輯:

我所做的是這樣的:

select 
    count(case when old_or_new = 'Old' then 1 else 0 end) as old, 
    count(case when old_or_new = 'New' then 1 else 0 end) as new 
from members 

結果是這樣的:

old | new 
---------- 
3 | 2 
+0

哪個DBMS?你已經嘗試了什麼? –

+0

MySQL數據庫。我嘗試了旋轉,但它不是我想要的結果。讓我編輯我的問題:) – Scrappy

回答

3

這是一組由查詢的最基本形式:

select old_or_new as column_name, 
     count(*) as total 
from the_table 
group by old_or_new; 

SQLFiddle:http://sqlfiddle.com/#!15/9469c/1

+0

這就是它!謝謝! – Scrappy