mysql两个表的并集

mysql两个表的并集,mysql,union,Mysql,Union,我有两张桌子: table A (id, user_id, flag) table B (id, user_id, flag) 这里,如果我计算表A,它是10,B是5 所以总数=10+5=15 SELECT * FROM table A LEFT JOIN table B ON table B.user_id = table A.user_id UNION ALL SELECT * FROM table A RIGHT JOIN table B ON table B.user_id = ta

我有两张桌子:

table A (id, user_id, flag)

table B (id, user_id, flag)
这里,如果我计算表A,它是10,B是5

所以总数=10+5=15

SELECT * FROM table A
LEFT JOIN table B ON table B.user_id = table A.user_id
UNION ALL
SELECT * FROM table A
RIGHT JOIN table B ON table B.user_id = table A.user_id
所以它应该是15,而不是50。

使用

SELECT * FROM TABLE1 UNION 
SELECT * FROM TABLE2

UNION会删除重复记录,而UNION ALL则不会。请检查以确保表中的数据正确无误

表A应该有15行

SELECT COUNT(*) as 'rowCountTableA' FROM table_a;
SELECT COUNT(*) as 'rowCountTableB' FROM table_b;
表B应该有5行

SELECT COUNT(*) as 'rowCountTableA' FROM table_a;
SELECT COUNT(*) as 'rowCountTableB' FROM table_b;
如果表是正确的,并且具有完全匹配的列名,则可以通过指定星号将它们连接在一起,以获取所有列值

但是,如果表中的列有一些不同的列名,这些列名在表_a中,而不是在表_b中,则必须调用列名,而不是使用星号获取所有值

例如:

SELECT (id,user_id,flag) FROM table_a
UNION ALL
SELECT (id,user_id,flag) FROM table_b

我的场景就像我想要完整的外部连接概念,这是不可能的。我猜在您的代码中,替换UNION ALL->UNION,检查输出u getPlz添加表的数据。