我需要使用 group by 找出表中的所有状态:
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
任何帮助表示赞赏。
使用以下查询:
SELECT status, count(id) as CNT FROM table GROUP BY status
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)