majestyking

有这样一个需求:

数据库表A里面存入的是原始数据,原始数据经过一系列的大数据处理之后,把处理之后的数据传给了应用层的接口,最终展现到网页上。

而为了测试这些环节有没有bug,比如精度丢失,数据类型错误之类的,我们要从接口获取数据,然后把获取到的数据存入数据库表B。

最后,比较数据库表B和A里面的数据有何不同。

 

下面的SQL语句能够达到这个目的,而且简单、快速、高效,不需要写JAVA代码。

SELECT id,name,class FROM(SELECT id,name,class FROM t1 AS a
UNION ALL
SELECT id,name,class FROM t2 AS b
)temp
GROUP BY id,name,class
HAVING count(*)=1
ORDER BY id;

 

我们知道一个表里面有很多列,上面的语句可以比较任意列。

 

以下是比较结果:

 

以下是表t1和表t2

t1

 

t2

参考于:

https://weblogs.sqlteam.com/jeffs/2004/11/10/2737/

posted on 2019-09-11 14:48  国王陛下万万岁  阅读(3156)  评论(0编辑  收藏  举报

分类:

技术点:

相关文章:

  • 2021-12-14
  • 2022-01-25
  • 2021-12-31
  • 2022-02-09
  • 2021-09-27
  • 2021-12-08
  • 2021-12-20
  • 2018-05-22
猜你喜欢
  • 2021-11-20
  • 2021-11-02
  • 2021-12-14
  • 2021-09-27
  • 2021-11-28
  • 2022-01-01
相关资源
相似解决方案