2
我有一個表,看起來像這樣:集結在SQL
Conversion_Date User_Name Last_Date_Touch Touch_Count
7/15/2017 A 6/17/2017 1
7/16/2017 B 6/24/2017 2
7/19/2017 A 6/20/2017 1
7/19/2017 C 6/29/2017 1
我想從每個Conversion_Date
過去30天User_Name
在SQL得到Touch_Count
總和。
我首先想到的唯一事情是找出每個轉換日期的時間窗口,然後我不知道如何聚合這個來獲得最終結果。
首先,它是將低於30天的窗口:
Conversion_Date User_Name Last_Date_Touch Touch_Count 30_Days_Ago
7/15/2017 A 6/17/2017 1 6/15/2017
7/16/2017 B 6/24/2017 2 6/16/2017
7/19/2017 A 6/20/2017 1 6/19/2017
7/19/2017 C 6/29/2017 1 6/19/2017
然後,我需要這樣它看起來像這樣聚集吧:
Conversion_Date User_Name Last_Date_Touch Touch_Count SUM(Last30daysbyconversiondate)
7/15/2017 A 6/17/2017 1 5
7/16/2017 B 6/24/2017 2 5
7/19/2017 A 6/20/2017 1 4
7/19/2017 C 6/29/2017 1 4
最後兩個分別爲4,因爲last_date_touch值2017/6/17不在2017年7月19日的30天窗口中,因此touch_count被排除在外,使得最後兩行中的總數爲4。
如果您知道如何在SQL中執行此操作,那麼任何幫助都會很棒。
謝謝!
我從來沒有想過做一個自我加入...天才。謝謝! –
不用擔心@NickKnauer願意幫忙 – scsimon
如果轉換日期列的形式爲'2017-07-15 01:34:29'這樣的時間戳,這樣的情況仍然會有效嗎? @scsimon –