ホームページ > データベース > mysql チュートリアル > SQL で一意でない列値を持つ行を検索して取得する方法

SQL で一意でない列値を持つ行を検索して取得する方法

Susan Sarandon
リリース: 2024-12-19 17:25:09
オリジナル
915 人が閲覧しました

How to Find and Retrieve Rows with Non-Unique Column Values in SQL?

区別のない列値を持つ行のクエリ

SQL では、特定の列の値が次のとおりである行を取得するのが一般的なタスクです。明確ではありません。これは、重複データの特定や異常の検出に役立ちます。

シナリオ例

次のデータを含む Customers という名前のテーブルについて考えます:

CustomerName EmailAddress
Aaron [email protected]
Christy [email protected]
Jason [email protected]
Eric [email protected]
John [email protected]

EmailAddress 列が区別できないすべての行を取得するには、次のコマンドを使用できます。 query:

SELECT EmailAddress, CustomerName
FROM Customers
WHERE EmailAddress IN
  (SELECT EmailAddress FROM Customers GROUP BY EmailAddress HAVING COUNT(*) > 1)
ログイン後にコピー

説明

IN 句は、サブクエリで見つかった EmailAddress 値をフィルタリングします。サブクエリはすべての EmailAddress 値をグループ化し、各値の出現回数をカウントします。次に、HAVING 句は、複数出現するグループ (つまり、明確でない値) のみを選択します。

このアプローチを使用することで、EmailAddress 列が明確でない行を効率的に識別して返します。この方法は、ほとんどの場合、EXISTS 演算子を使用するよりも大幅に高速です。

以上がSQL で一意でない列値を持つ行を検索して取得する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート