【发布时间】:2018-01-05 11:24:12
【问题描述】:
当我在两个几乎相同的表中发现任何数据差异时,我需要生成一份报告。 (我使用的是 Informix 数据库版本 11.70。)
例如:我的活动表有列:
直播
Name ID TRN
XXX 1 10
存档:
Date Name ID TRN
01/01/2018 XXX 1 10
31/12/2017 XXX 1 11
29/12/2017 XXX 1 12
存档表具有相同的列集,只是它还有一个日期列,因此我可以查看实时表在给定日期的值。
与存档数据相比,我将如何编写查询以查找实时数据中的值是否发生变化。
我试过这个查询:
select name,id,TRN from live
union
select name,id,TRN from archive
虽然它有效,但是否有更好/更快的方法,如报告中我需要同时拥有实时数据和历史值的差异。
报告中的预期结果:
Live:
01/01/2018|XXX|1|10
Archive
31/12/2017|XXX|1|11
29/12/2017|XXX|1|12
【问题讨论】:
-
您的示例查询不包括日期字段;您的预期输出确实如此。这是概念上的脱节。