SQL分組後統計記錄數
在使用帶有GROUP BY
子句的SELECT
語句時,您可以使用聚合函數來統計每個分組中的記錄數。這對於獲取匯總統計資料非常有用,例如每個城鎮的使用者總數。
使用GROUP BY進行計數
要在分組後統計記錄,請在GROUP BY
子句中使用COUNT(*)
聚合函數:
<code class="language-sql">SELECT `town`, COUNT(*) FROM `user` GROUP BY `town`;</code>
此查詢將傳回城鎮清單以及每個城鎮的使用者總數。
其他聚合函數
除了COUNT
之外,您還可以將其他聚合函數與GROUP BY
結合使用,例如:
MAX
:傳回每個群組中欄位的最大值。 MIN
:傳回每個群組中欄位的最小值。 COUNT DISTINCT
:傳回每個群組中欄位唯一值的計數。 範例
考慮一個名為user
的表,其中包含一個名為town
的欄位。以下查詢統計每個城鎮的使用者總數:
<code class="language-sql">SELECT `town`, COUNT(*) AS `total_users` FROM `user` GROUP BY `town`;</code>
此查詢將產生以下結果:
城镇 | 用户总数 |
---|---|
哥本哈根 | 58 |
纽约 | 58 |
雅典 | 58 |
使用變數儲存總數
或者,您可以宣告一個變數來儲存使用者總數,然後選擇該變數的值:
<code class="language-sql">DECLARE @numOfUsers INT; SET @numOfUsers = (SELECT COUNT(*) FROM `user`); SELECT DISTINCT `town`, @numOfUsers AS `total_users` FROM `user`;</code>
這種方法在後續計算或操作中使用總數時提供了靈活性。
以上是SQL分組資料後如何統計記錄數?的詳細內容。更多資訊請關注PHP中文網其他相關文章!