ホームページ  >  記事  >  データベース  >  MySQL の 2 つの列から異なる値を選択し、重複するエントリを削除する方法

MySQL の 2 つの列から異なる値を選択し、重複するエントリを削除する方法

Barbara Streisand
Barbara Streisandオリジナル
2024-10-26 13:20:03998ブラウズ

How to Select Distinct Values from Two Columns in MySQL and Eliminate Duplicate Entries?

MySQL の 2 つの列から異なる値を選択する: 重複エントリを克服する

MySQL データベース管理では、複数の列にわたる重複値を区別すると、チャレンジ。次のシナリオを考えてみましょう:

質問:

「foo」という名前のデータベース テーブルには、「foo」と「bar」という 2 つの列があり、次のデータが含まれています。

foo bar
a c
c f
d a
c a
f c
a c
d a
a c
c a
f c

クエリ "SELECT DISTINCT foo, bar FROM foo" を実行すると、次の結果が得られます:

foo bar
a c
c f
d a
c a
f c

ただし、これらの結果には、'foo' と ' のペアの繰り返しが含まれます。 「a」や「c」などの「bar」値は、異なる順序で表示されます。目標は、両方の列から異なる値のみを選択し、これらの重複を排除することです。

回答:

この問題に対処するために、MySQL は 'GROUP BY' 句を提供します。これは、指定された列に基づいて行をグループ化し、グループごとに個別の行を 1 つだけ選択します。この句を使用すると、クエリを次のように変更できます:

SELECT foo, bar
FROM foo
GROUP BY foo, bar;

この変更されたクエリは次の結果を生成します:

foo bar
a c
c f
d a

'foo' と ' の両方で行をグループ化することにより、 bar' の場合、クエリは、出現順序に関係なく、値の個別の組み合わせがそれぞれ結果内で 1 回だけ表されることを保証します。

以上がMySQL の 2 つの列から異なる値を選択し、重複するエントリを削除する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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