ホームページ > データベース > mysql チュートリアル > MySQLで完全な外側結合をシミュレートするにはどうすればよいですか?

MySQLで完全な外側結合をシミュレートするにはどうすればよいですか?

Susan Sarandon
リリース: 2025-01-25 13:42:11
オリジナル
590 人が閲覧しました

How Can I Simulate a FULL OUTER JOIN in MySQL?

MySQL で FULL OUTER JOIN をシミュレートする

MySQL 自体は FULL OUTER JOIN をサポートしていません。ただし、LEFT JOIN、RIGHT JOIN、集合演算子の組み合わせを使用してシミュレートできます。

限定された完全外部結合

FULL OUTER JOIN で重複行が生成されない場合は、以下を使用できます。

<code class="language-sql">SELECT * 
FROM t1
LEFT JOIN t2 
ON t1.id = t2.id
UNION
SELECT * 
FROM t1
RIGHT JOIN t2 
ON t1.id = t2.id</code>
ログイン後にコピー

UNION 演算子は、このクエリ パターンによって導入された重複行を削除します。

一般的な完全外部結合

重複行が発生する可能性がある一般的なケースでは、次を使用します:

<code class="language-sql">SELECT * 
FROM t1
LEFT JOIN t2 
ON t1.id = t2.id
UNION ALL
SELECT * 
FROM t1
RIGHT JOIN t2 
ON t1.id = t2.id
WHERE t1.id IS NULL</code>
ログイン後にコピー

UNION ALL 演算子は 2 つの JOIN の結果を結合し、追加の WHERE 句により、t1.id NULL (LEFT JOIN で一致しない) を持つ行のみが最終結果に追加されるようになり、重複が排除されます。

以上がMySQLで完全な外側結合をシミュレートするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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