ホームページ >データベース >mysql チュートリアル >JOIN と UNION: これらのデータベース操作はどのように異なりますか?

JOIN と UNION: これらのデータベース操作はどのように異なりますか?

Susan Sarandon
Susan Sarandonオリジナル
2025-01-15 09:06:43247ブラウズ

JOIN vs. UNION: How Do These Database Operations Differ?

データベース操作の深い理解: JOIN と UNION の違い

データベース クエリでは、JOIN と UNION は 2 つの基本的なテーブル接続操作です。どちらも複数のテーブルの行を結合する必要がありますが、その方法と結果はまったく異なります。

JOIN と UNION の違い

参加:

  • 指定されたテーブルのすべての行のデカルト積 (相互結合) を実行します。
  • 指定された条件 (結合条件) に基づいて結果のデータセットをフィルターします。
  • 一致する行または関連する行の列を結合して新しい行を作成します。

結合:

  • 指定されたテーブル内の行を結合し、重複を保持します。
  • 新しい行を作成したり、データを操作したりしません。
  • 出力には、各テーブルのすべての行が垂直方向に配置されて含まれます。

例:

次の例は、JOIN と UNION の違いを示しています。

<code>表 A:
+----+
| id | name |
+----+
| 1  | John |
| 2  | Mary |
+----+

表 B:
+----+
| id | city |
+----+
| 1  | London |
| 2  | Paris |
+----+</code>

参加:

<code>SELECT *
FROM 表A
JOIN 表B ON 表A.id = 表B.id;</code>

結果:

<code>+----+------+----+--------+
| id | name | id | city    |
+----+------+----+--------+
| 1  | John | 1  | London  |
| 2  | Mary | 2  | Paris   |
+----+------+----+--------+</code>

結合:

<code>SELECT *
FROM 表A
UNION
SELECT *
FROM 表B;</code>

結果:

<code>+----+------+
| id | name |
+----+------+
| 1  | John |
| 2  | Mary |
| 1  | London |
| 2  | Paris |
+----+------+</code>

明らかに、JOIN は一致する行のみを含む、より小さく粒度の高いデータ セットを生成しますが、UNION は重複を含むすべての行を結合します。

以上がJOIN と UNION: これらのデータベース操作はどのように異なりますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。