请教SQL实现数据拉链- Oracle开发- ITPUB论坛- 澳信传媒旗下专业技术社区
离线
初级会员
请教SQL实现 数据拉链

有以下需求, 想请教各位高手是否可以通过SQL 实现,谢谢!


数据源表:

CUST_ID    UP_DATE        VALUE
1001         2009-01-01      1000
1002         2009-01-01      2000
1003         2009-01-01      3000
1001         2009-02-01      1002
1002         2009-03-01      2003
1001         2009-05-01      1005

想展现目标数据:
CUST_ID    UP_DATE        VALUE
1001         2009-01-01      1000
1002         2009-01-01      2000
1003         2009-01-01      3000
1001         2009-02-01      1002
1002         2009-02-01      2000
1003         2009-02-01      3000
1001         2009-03-01      1002
1002         2009-03-01      2003
1003         2009-03-01      3000
1001         2009-04-01      1002
1002         2009-04-01      2003
1003         2009-04-01      3000
1001         2009-05-01      1005
1002         2009-05-01      2003
1003         2009-05-01      3000
1001         2009-06-01      1005
1002         2009-06-01      2003
1003         2009-06-01      3000
........
1) 数据源表由手工录入,所以CUST_ID 对应的值的变动无规律
2) 目标数据按月展示
3) 当同一CUST_ID 多笔时,月份在两笔之间时 VALUE取值为日期小于所在月份最近日期的值
  如:CUST_ID=1001 在2009-01-01 2009-02-01 和2009-05-01 有值  说明CUST_ID=1001 在这三个月有变动,
         2009-03-01 2009-04-01 的取值2009-02-01的值, 2009-05-01 2009-06-01...取值2009-05-01的值直到有新的记录


  
郑重声明:资讯 【请教SQL实现数据拉链- Oracle开发- ITPUB论坛- 澳信传媒旗下专业技术社区】由 发布,版权归原作者及其所在单位,其原创性以及文中陈述文字和内容未经(企业库qiyeku.com)证实,请读者仅作参考,并请自行核实相关内容。若本文有侵犯到您的版权, 请你提供相关证明及申请并与我们联系(qiyeku # qq.com)或【在线投诉】,我们审核后将会尽快处理。
—— 相关资讯 ——