深入理解数据库操作:JOIN与UNION的差异
数据库查询中,JOIN和UNION是两种基本的表连接操作。虽然两者都涉及到组合多个表中的行,但它们的方法和结果却大相径庭。
JOIN和UNION的区别
JOIN:
UNION:
示例:
以下示例说明了JOIN和UNION的区别:
<code>表 A: +----+ | id | name | +----+ | 1 | John | | 2 | Mary | +----+ 表 B: +----+ | id | city | +----+ | 1 | London | | 2 | Paris | +----+</code>
JOIN:
<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>
UNION:
<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中文网其他相关文章!