我必须有表格,每个表格有4列(id,name,games,points)。两个表中的列名相同。我想从一个大表中的两个列中选择所有内容(例如,如果在足球中,您在一个表中加入了MLS和英超联赛)。 我试过这段代码:
SELECT * FROM league1 JOIN league 2;
但它不是我想要的输出。 我可以看到我的表格并没有完全相同:
CREATE TABLE `league1` (
`id` int(11) DEFAULT NULL,
`Navn` varchar(50) COLLATE utf8_danish_ci NOT NULL,
`kampe` int(11) DEFAULT NULL,
`Point` int(11) NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_danish_ci ROW_FORMAT=DYNAMIC
CREATE TABLE `league2` (
`id` int(11) DEFAULT NULL,
`Navn` varchar(50) DEFAULT NULL,
`kampe` int(11) DEFAULT NULL,
`Point` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8
是不是可以在同一列下加入它们,所以我仍然有4列,但两个表中的所有行都是?
答案 0 :(得分:1)
使用union all
保留重复项。如果字段数不同,您可以在两个表上声明字段匹配而不是*
SELECT * FROM league1
UNION ALL
SELECT * FROM league2
答案 1 :(得分:1)
您不想加入,但要联合两个表格的内容
SELECT *
FROM league1
UNION ALL
SELECT *
FROM league2;