首頁 > 資料庫 > mysql教程 > 如何在 MySQL 中尋找多行中的相同值?

如何在 MySQL 中尋找多行中的相同值?

Patricia Arquette
發布: 2025-01-22 21:02:14
原創
831 人瀏覽過

How to Find Identical Values Across Multiple Rows in MySQL?

MySQL多行相同值找出:完整指南

在MySQL等關係型資料庫中,識別具有匹配列值的行列通常是一項關鍵任務。本文探討如何傳回在特定欄位中共享相同值的欄位。

考慮以下資料表:

ID Score
1 95
2 100
3 88
4 100
5 73

要檢索同時出現在ID 2和ID 4中的所有分數,一種方法是使用聚合和HAVING子句:

<code class="language-sql">SELECT Score
FROM t
GROUP BY Score
HAVING COUNT(CASE WHEN ID = 2 THEN 1 END) > 0 AND COUNT(CASE WHEN ID = 4 THEN 1 END) > 0;</code>
登入後複製

此查詢計算每個不同分數的ID 2和ID 4行的計數。然後,將ID 2和ID 4的計數都大於零的分數作為所需結果傳回。

說明:

  • GROUP BY Score按Score列聚合行。
  • HAVING COUNT(CASE WHEN ID = 2 THEN 1 END) > 0 確保只包含存在ID 2的分數。
  • HAVING COUNT(CASE WHEN ID = 4 THEN 1 END) > 0進一步過濾結果,以包含也存在ID 4的分數。

透過在HAVING子句中組合這些條件,查詢有效地辨識同時出現在ID 2和ID 4中的分數。此技術可以擴展到任意數量的ID或列,為在MySQL中尋找匹配值提供通用的解決方案。

以上是如何在 MySQL 中尋找多行中的相同值?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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