比较两个相同的表MySQL

时间:2016-10-21 08:00:16

标签: mysql select rows

我目前正在使用表格转换数据,这就是为什么我创建了一个与旧表格相同但又空白的新表格。

我运行了数据转换器,行数不同。

如何选择与两个表不同的所有行,省略主键标识符(每个条目都有所不同)。

2 个答案:

答案 0 :(得分:0)

select * from (
SELECT 'Table1',t1.* FROM table1 t1 WHERE 
(t1.id)
NOT IN (SELECT  t2.id FROM table2 t2)
UNION ALL
SELECT 'Table2',t2.* FROM table2 t2 WHERE   
(t2.id) 
NOT IN (SELECT  t1.id FROM table1 t1))temp order by id;

您可以在列中添加更多列以检查更多信息。 试着看看这是否有帮助。

答案 1 :(得分:0)

这为您提供了t1中而不是t2中存在的所有行。您列出除ID之外的所有列。 (当然,您可以将其切换为t2中的所有行,而不是t1中的行: - )

select col1, col2, col3, ... from t1
except
select col1, col2, col3, ... from t2;