2017-07-12 94 views
1

我需要找出使用組表中的所有狀態:通過結合組和計數的MySQL

SELECT status FROM table GROUP BY status 

再算上結果發現

SELECT count(id) WHERE status = [STATUS] 

因此,像一個表:

+--------------------+ 
| ID | STATUS | NAME | 
+--------------------+ 
|0001| BOUGHT | JOHN | 
---------------------- 
|0002| BOUGHT | JOHN | 
---------------------- 
|0003| CANCEL | JOHN | 
---------------------- 
|0004| BOUGHT | JOHN | 
---------------------- 
|0005| CANCEL | JOHN | 
--------------------- 
|0006| BOUGHT | JOHN | 
---------------------- 
|0007| BOUGHT | JOHN | 
---------------------- 
|0008| SAVE | JOHN | 
---------------------- 
|0009| SAVE | JOHN | 
---------------------- 
|0010| BOUGHT | JOHN | 
---------------------- 
|0011| SAVE | JOHN | 
---------------------- 

將產生類似的結果:

STATUS | COUNT 
--------------- 
SAVE | 3 
BOUGHT | 6 
CANCEL | 2 

任何幫助表示讚賞。

+0

'FROM表組選擇地位status'是一個昂貴的方式得到的結果相同'SELECT DISTINCT status FROM table'。 – axiac

回答

0

使用下面的查詢:

SELECT status, count(id) as CNT FROM table GROUP BY status 
0

僅僅通過狀態組這會給你想要的結果

select status, count(id) as COUNT FROM table GROUP BY status