高效會擷取 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中文網其他相關文章!