微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何在scd2中获得无限的流量版本?

如何解决如何在scd2中获得无限的流量版本?

您好,我有一个数据集,其中的数据行具有不同的版本

customer有一个customer_id和一些属性,我只想收集对“最后一个”行有重大更改的信息流

[在此处输入图片描述] [1]

> version of row    id  ref important change    unimportant change  is_important
1   1   xyz 1   2   yes
2   1   xyz 1   3   no
                    
                    
3   1   xyz 2   1   yes
4   1   xyz 1   4   yes
                    
                    
5   1   xyz 4   1   yes

因此,如果我使用常规的滞后函数(窗口函数,当然会得到 版本1 版本3 版本4 版本5 版本6

到目前为止一切顺利

但是如果我想说版本1是我的第一行 并且我想将特定时间范围内该行之后的所有行与该行进行比较,并获取与第一行不同的最新行-嗯,我该怎么做?

因此,如果我花较短的时间,我将收集行版本4,然后将其与下一行进行比较,然后将版本5视为重要更改(而不是版本6),因为重要字段上的版本6没有更改针对版本4

如果我花更长的时间,我将拥有版本1,并将所有其他版本与之进行比较,并采用与重要领域不同的最新版本,得到版本5

了解我的意思是我想拥有一个移动的窗口并比较其中的所有版本,并采用与上一个重要版本不同的版本

当然,我可以使用ETL工具或执行一些SP(存储过程),但是目标应该是使用1条sql

thx

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。