2 つのテーブルの共通部分をクエリする Mysql メソッド: 1. UNION ALL キーワードを使用して 2 つのデータのデータ列をマージし、共通部分をクエリします; 2. IN キーワードを使用してクエリを使用します; 3. EXISTS キーワードのサブクエリ。
2 つのテーブルの mysql クエリ交差メソッド:
1. 交差が必要な 2 つのテーブル (列) 構造一貫性があり、対応するフィールドの数とフィールド タイプが同じである必要があります。UNION ALL キーワードを使用して 2 つのデータのデータ列をマージします。比較する必要がある上記のすべての列を GROUP BY します。最後に HAVING COUNT (任意の列、もう列)>1 の場合、それは交差です。
SELECT a.* FROM( SELECT * from teacher UNION ALL SELECT * from student)a GROUP BY a.id,a.name,a.sex HAVING COUNT(a.sex)>1
#2. 内部結合または同等の結合。慈恩(じおん)。 2 つのデータ列を比較する場合、条件には比較する必要がある列が含まれている必要があります。ここでは性別列の比較がないため、手順 2 よりもデータ行が 1 行多くなります。
SELECT * FROM student AS a JOIN teacher AS b ON a.name =b.name AND a.ID=b.ID或者SELECT * FROM student AS a inner JOIN teacher AS b ON a.name =b.name AND a.ID=b.ID
#3. IN キーワードを使用してクエリを実行します。同じデータ列の数を比較するには、必要な数の IN が必要です。このとき、列を制御する必要があります。列を多すぎることはお勧めできません。
SELECT * FROM student AS a where a.name in (select name from teacher )AND a.ID in (select ID from teacher);
4. EXISTS キーワードを使用したサブクエリ。端的に言えば、このステートメントは、教師の中で 2 つの等しい条件が満たされているかどうかを判断することによって導き出されます。
SELECT * FROM student AS a where EXISTS (select *from teacher b where a.name =b.name AND a.ID=b.ID)
その他の関連する無料学習の推奨事項: mysql チュートリアル# # #######(ビデオ)#########
以上がmysqlで2つのテーブルの交差を確認する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。