我无法为我的问题提出有效的 SQL 查询,希望有人能帮助我。
我有一个表(Sybase IQ),其中包含不同客户的数据及其在某个时间点的客户价值:
老客户价值表:
customer_id | load_date | customer_value
5 | 2016-01-01 | Basic
5 | 2016-04-01 | Premium
5 | 2016-08-01 | Gold
6 | 2016-01-01 | Basic
6 | 2016-04-01 | Premium
6 | 2016-08-01 | Gold
7 | 2016-01-01 | Basic
7 | 2016-04-01 | Premium
7 | 2016-08-01 | Gold
要将此表与其他表连接,我必须知道在特定时间范围内客户的有效 customer_value 是什么。所以想法是转换上表并创建一个具有以下形式的新表:
要创建的新客户价值表
customer_id | date_valid_from | date_valid_to | customer_value
5 | 2016-01-01 | 2016-03-31 | Basic
5 | 2016-04-01 | 2016-08-24 | Premium
5 | 2016-08-25 | NULL | Gold
6 | 2016-01-01 | 2016-03-31 | Basic
6 | 2016-04-01 | 2016-08-24 | Premium
6 | 2016-08-25 | NULL | Gold
7 | 2016-01-01 | 2016-03-31 | Basic
7 | 2016-04-01 | 2016-08-24 | Premium
7 | 2016-08-25 | NULL | Gold
可悲的是,我找不到任何可以为我创建所需输出的 sql 查询的解决方案:(希望有人可以帮助我
提前致谢