假设有两个表,table1 和 table2,它们的结构相同:
-- 创建示例表 table1
CREATE TABLE table1 (
id INT,
name VARCHAR(50)
);
-- 插入一些数据
INSERT INTO table1 VALUES (1, 'Alice'), (2, 'Bob'), (3, 'Charlie');
-- 创建示例表 table2
CREATE TABLE table2 (
id INT,
name VARCHAR(50)
);
-- 插入一些数据
INSERT INTO table2 VALUES (3, 'Charlie'), (4, 'David'), (5, 'Eve');
现在,你可以使用 UNION 将两个表的数据合并:
SELECT id, name FROM table1
UNION
SELECT id, name FROM table2;
这将返回一个包含 table1 和 table2 中所有不重复行的结果集。请注意,UNION 默认会去除重复的行,如果你想包含重复行,可以使用 UNION ALL:
SELECT id, name FROM table1
UNION ALL
SELECT id, name FROM table2;
使用 UNION 或 UNION ALL 时,两个 SELECT 语句的列数和数据类型必须匹配。如果不匹配,你可能需要进行适当的转换或调整以使其匹配。
转载请注明出处:http://www.zyzy.cn/article/detail/14094/MySQL