SQL - 比较匹配集的列

时间:2017-02-11 18:22:32

标签: sql-server

我有下面的数据集,需要根据最新日期识别主记录,如果结果中存在关系,则生成输出作为父子匹配记录。

id1 id2  date1     date2
a    b   1-dec-17  2-dec-17
b    c   2-dec-17  30-nov-17
a    e   1-dec-17  15-dec-17
d    e   14-dec-17 15-dec-17
z    y   14-dec-17 15-dec-17

此处预期输出为:

id1 id2 date1     date2
e   a   15-dec-17 1-dec-17
e   b   15-dec-17 2-dec-17
e   c   15-dec-17 30-nov-17
e   d   15-dec-17 14-dec-17
y   z   15-dec-17 14-dec-17

如果您查看源数据e包含最新日期,并且存在关联a->b->c->d-e

结果中的id1列也应该是主记录。

1 个答案:

答案 0 :(得分:0)

下面是一个代码,它可以生成您想要的结果,但不保证结果,因为您可以将日期重复。<​​/ p>

for 顺便说一下,我建议重新设计原始表格。看起来不对。