ホームページ > データベース > mysql チュートリアル > MySQL で 1 つのテーブルに固有の行を検索するには?

MySQL で 1 つのテーブルに固有の行を検索するには?

Susan Sarandon
リリース: 2024-12-27 03:14:11
オリジナル
958 人が閲覧しました

How to Find Rows Unique to One Table in MySQL?

別のテーブルから除外され、テーブルに固有の行を検出する方法

リレーショナル データベースの領域では、多くの場合、1 つのテーブルに存在するが存在しないデータを分離する必要があります。別のところで。アンチ結合または左アンチセミ結合として知られるこの操作は、重複または冗長なレコードを除外する際に重要な役割を果たします。

MySQL でこのタスクを実行するには、次のようなアンチ結合クエリの使用を検討してください。 :

SELECT * FROM Table1
WHERE FirstName NOT IN (SELECT FirstName FROM Table2)
ログイン後にコピー

このクエリでは、FirstName 列が比較基準として使用されます。このクエリは、FirstName 値が Table2 に含まれないすべての行を Table1 から取得します。

たとえば、次の内容を含む 2 つのテーブル Table1 と Table2 があるとします。データ:

  • 表 1
FirstName LastName BirthDate
Tia Carrera 1975-09-18
Nikki Taylor 1972-03-04
Yamila Diaz 1972-03-04
  • 表 2
FirstName LastName BirthDate
Tia Carrera 1975-09-18
Nikki Taylor 1972-03-04

これらのテーブルに対してアンチ結合クエリを実行すると、次の結果が得られます次の出力:

+-----------+----------+------------+
| FirstName | LastName | BirthDate  |
+-----------+----------+------------+
| Yamila    | Diaz     | 1972-03-04 |
+-----------+----------+------------+
ログイン後にコピー

この結果は、Yamila Diaz が Table1 には存在するが Table2 には存在しないことを示しています。

選択基準は、Table1 と Table2 の間にある共通の列に基づくことができることに注意してください。 2つのテーブル。たとえば、両方のテーブルに id フィールドがある場合、クエリは次のように書き換えることができます。

SELECT * FROM Table1
WHERE id NOT IN (SELECT id FROM Table2)
ログイン後にコピー

アンチ結合クエリを利用すると、一方のテーブルに存在するがテーブルから除外されているデータを効果的に識別して抽出できます。別の。この手法は、データ クレンジング、レコード調整、その他のデータ分析タスクに非常に役立ちます。

以上がMySQL で 1 つのテーブルに固有の行を検索するには?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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