首頁 > 資料庫 > mysql教程 > 如何使用聚合和 HAVING 檢索 MySQL 中匹配的列值?

如何使用聚合和 HAVING 檢索 MySQL 中匹配的列值?

Susan Sarandon
發布: 2025-01-22 21:12:11
原創
756 人瀏覽過

How to Retrieve Matching Column Values in MySQL Using Aggregation and HAVING?

高效會擷取 MySQL 中符合的欄位值

資料庫查詢通常需要根據特定列值匹配來檢索行。當處理大型表格時,此任務變得更加複雜。 此範例示範了一種使用 MySQL 聚合函數和 HAVING 子句的有效方法。

讓我們考慮一個範例表:

<code>ID | Score
-----
1 | 95
2 | 100
3 | 88
4 | 100
5 | 73</code>
登入後複製

目標是找出 ID 2 和 ID 4 共同的分數。預期結果為 100。

MySQL 的聚合功能提供了一個優雅的解決方案:

<code class="language-sql">SELECT score
FROM t
GROUP BY score
HAVING SUM(id = 2) > 0 AND SUM(id = 4) > 0;</code>
登入後複製

此查詢按 score 將資料分組。然後,HAVING 子句使用聚合函數來檢查每個群組中是否存在 ID 2 和 ID 4。 SUM(id = 2) > 0 計算 ID 2 的出現次數,SUM(id = 4) > 0 計算 ID 4 的出現次數。僅傳回兩個計數都大於零的分數。 這可確保結果中僅包含與兩個 ID 關聯的分數。

以上是如何使用聚合和 HAVING 檢索 MySQL 中匹配的列值?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板