ホームページ >データベース >mysql チュートリアル >MySQL 列の複数の行にまたがる共通の値を見つける方法

MySQL 列の複数の行にまたがる共通の値を見つける方法

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2025-01-22 21:17:16876ブラウズ

How to Find Common Values Across Multiple Rows in a MySQL Column?

MySQL 列の共通値の検索

MySQL などのリレーショナル データベースを使用する場合、多くの場合、同一の列値を共有する行を取得する必要があります。テーブルに次のデータが含まれるシナリオを考えてみましょう:

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

問題: ID 2 と 4 の両方の行に表示されるスコアを取得するにはどうすればよいですか?

解決策:

このクエリは GROUP BY と HAVING を使用します。目的の結果を達成するための句:

SELECT Score
FROM t
GROUP BY Score
HAVING SUM(id = 2) > 0 AND SUM(id = 4) > 0

説明:

  • GROUP BY Score: この句は、スコア列ごとに行をグループ化します。
  • HAVING SUM(id = 2) > 0: HAVING 句のこの部分は、各グループ内で id = 2 の行の合計 (スコア) がゼロより大きいかどうかをチェックします。
  • AND SUM(id = 4) > 0: この条件は、同じグループ内で id = 4 の行の合計も 0 より大きいかどうかをチェックします。

結果:

これらを組み合わせることで、 HAVING 句に 2 つの条件がある場合、id = 2 と id = 4 の両方の行に共通するスコアのみを取得します。この場合、値が返されます。 100.

以上がMySQL 列の複数の行にまたがる共通の値を見つける方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。