mysql - SQL 这个 left jion 和 left outer jion 怎么结果是一样的?
巴扎黑2017-04-17 14:45:08
0
2
659
SELECT b.id,b.cid,b.name,t.type FROM shbooks b LEFT JOIN shtype t ON t.id = b.cid;
SELECT b.id,b.cid,b.name,t.type FROM shbooks b LEFT OUTER JOIN shtype t ON t.id = b.cid;
LEFT JOIN と LEFT OUTER JOIN は同じですが、通常、SQL ステートメントを作成するときに OUTER が省略される点が異なります。これは、内部結合と同様に理解できます。内部結合を記述するときは、通常、INNER を省略して JOIN を直接記述します。
複数のテーブル リンクが存在します
内部結合 (JOIN または INNER JOIN)
外部結合
左結合または左外部結合 (LEFT JOIN または LEFT OUTER JOIN)
右結合または右外部結合 (RIGHT JOIN または RIGHT OUTER JOIN)
完全な外部結合は、キー UNION を介して左結合ステートメントと右結合ステートメントを接続することです
クロス結合 (CROSS JOIN)、これにはデカルト積が関係します。デカルト積についての私の個人的な理解は、2 つのテーブルの交差結合です。したがって、取得されるセット結果は、テーブル A の条件を満たすクエリのレコード * テーブル B の条件を満たすレコードになります。
これら 2 つは同じである必要があります。
左結合は左外部結合の略です。
拡張説明と警告表示を使用すると、データベースの最適化と再書き込み後のステートメントを確認できます。これらの 2 つの SQL は同じです。