怎么用SQL查询两张表是否相同

我想要如果不相同,只显示不相同,相同就只显示相同

就像

 表

相同

 表

不相同

用union呢

SQL 在菜鸟的菜鸡 发布于 2024-3-1 15:34
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共2回答
最佳回答
0
JL98Lv6中级互助
发布于2024-3-1 15:43

-- 找出只在table1中但不在table2中的值

SELECT 'table1' AS source, value

FROM table1

LEFT JOIN table2 ON table1.value = table2.value

WHERE table2.value IS NULL

UNION

-- 找出只在table2中但不在table1中的值

SELECT 'table2' AS source, value

FROM table2

LEFT JOIN table1 ON table2.value = table1.value

WHERE table1.value IS NULL;

--这将只返回两个表中都存在的

SELECT '相同' AS status, t1.value

FROM table1 t1

INNER JOIN table2 t2 ON t1.value = t2.value

最佳回答
0
CD20160914Lv8专家互助
发布于2024-3-1 15:36

表相同与不同,它里除了对比行数,还有每一行的数据也有不一样呀。。你得说出对比标准

  • 3关注人数
  • 266浏览人数
  • 最后回答于:2024-3-1 15:43
    请选择关闭问题的原因
    确定 取消
    返回顶部