“我有两个表,‘announcement’和‘temp_announcement’。 “announcement”表包含 15 行,而“temp_announcement”表包含 21 行。我需要比较这两个表之间的行并找出差异。由于“announcement”表有 15 行,而“temp_announcement”表有21 行,我想打印“temp_announcement”表中存在的额外 6 行。”
“我尝试使用 EXCEPT 运算符来比较表,但遇到了错误。查询未提供预期结果。任何有关如何正确使用 EXCEPT 或替代方法的见解或更正将不胜感激。”
“如何比较两个表以找到不同的行?” “我可以使用什么 SQL 查询来实现这个结果?” “有没有有效的方法来识别 MySQL 中两个表之间不匹配的行?”
SELECT column,
CASE SUM(tnum) WHEN 1 THEN 'In table1 only'
WHEN 2 THEN 'In table2 only'
ELSE 'Something went wrong'
END `In what table`
FROM (SELECT column, 1 AS tnum FROM table1
UNION
SELECT column, 2 FROM table2) combine
GROUP BY column
HAVING SUM(tnum) < 3;