問題の有効なSQLクエリを思いつくことができず、誰かが私を助けてくれることを願っています。SQL:1つの日付列からvalid_fromとvalid_to日付を生成
私は、ある時点から別の顧客とその顧客価値のためのデータを含むテーブル(の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が何かを知る必要があります。 だから、アイデアは上記の表を変換し、次の形式で新しいテーブルを作成することでした。:
新しい顧客価値表悲しいことに、私は、SQLクエリのための任意の解決策を見つけることができません
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
を作成するにはそれは私に所望の出力を作成します:( ホープ誰かが次の行に日付を取得し、電子を得るためにそれから1日を減算する私に、事前
のように問い合わせることができますか?あなたの質問でそれを計算するための適切な定義がないので。 – Viki888
SQL Serverのバージョンとは何ですか?それがSQL Server 2012の場合は、ウィンドウ機能のリード/ラグを使用することができます –