首頁 >資料庫 >mysql教程 >如何在 SQL 中根據聚合函數計數過濾群組?

如何在 SQL 中根據聚合函數計數過濾群組?

DDD
DDD原創
2025-01-02 20:46:40700瀏覽

How to Filter Groups Based on Aggregate Function Counts in SQL?

按聚合函數值分組和過濾

您可能會遇到需要對結果進行分組,然後按行數過濾的場景在每個組別中。而建議的查詢 SELECT * FROM mytable WHERE COUNT(*) > 1 GROUP BY 名稱在語法上不正確,它突出顯示了所需的功能。

要實現此目的,您可以使用 HAVING 子句,它允許您對聚合函數套用條件。以下修改後的查詢將實現您的目標:

SELECT name, COUNT(*)
FROM mytable
GROUP BY name
HAVING COUNT(*) > 1

在此查詢中:

  • SELECT name, COUNT(*): 選擇名稱列和中所有行的計數每個組別為COUNT(*)。
  • FROM mytable:指定要分組和篩選的表
  • GROUP BY name:按名稱列將結果分組。
  • HAVING COUNT(*) > 1:過濾分組結果,只包含行數大於1的組別。

此查詢將檢索所有行數超過1的群組的名稱和計數,以便您識別並根據值的出現進行過濾。

以上是如何在 SQL 中根據聚合函數計數過濾群組?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn