我有一個包含客戶,錨定日期(原始銷售日期),呼叫頻率(7,14或21天)的表。我需要使用客戶特定的錨定日期和頻率來創建未來通話記錄並將其添加到表格中,直到定義的結束日期。我使用SQL 2008創建未來呼叫Rercords SQL
0
A
回答
0
這看起來像一個開始:
declare @Customers as Table (CustomerId Int Identity, AnchorDate Date, CallFrequency Int);
insert into @Customers (AnchorDate, CallFrequency) values
('20130101', 7), ('20130102', 14), ('20130103', 21),
('20130104', 7), ('20130105', 14), ('20130106', 21),
('20130107', 7), ('20130108', 14), ('20130109', 21);
select *
from @Customers
declare @EndDate as Date = '20131231';
declare @Today as Date = SysDateTime();
with FutureCalls as (
select CustomerId, DateAdd(day, (DateDiff(day, AnchorDate, @Today)/CallFrequency + 1) * CallFrequency, AnchorDate) as CallDate, CallFrequency
from @Customers
union all
select CustomerId, DateAdd(day, CallFrequency, CallDate), CallFrequency
from FutureCalls
where DateAdd(day, CallFrequency, CallDate) <= @EndDate
)
select *
from FutureCalls
order by CallDate, CustomerId
option (MaxRecursion 0)
+0
這就是我所需要的只是在這裏和那裏的一些調整excaclty。 – 2013-05-08 12:57:52
+0
很高興幫助。您可以通過點擊旁邊的複選標記來接受答案,如果答案符合您的要求。請參閱[接受答案](http://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work)。 [FAQ](http://meta.stackexchange.com/questions/7931/faq-for-stack-exchange-sites)提供了大量其他信息。 – HABO 2013-05-08 15:33:18
相關問題
- 1. 呼叫來電呼叫
- 2. 安排一個JavaScript的未來呼叫,並取消任何未決呼叫
- 3. 呼叫未定義
- 4. OnVideoSizeChanged從未呼叫
- 5. Retrofit無法創建呼叫適配器
- 6. Twilio創建呼叫 - 張貼參數?
- 7. 創建其餘呼叫到服務器
- 8. 創建一個循環來查找在一個代表呼叫
- 9. 使用Sinch或Twilio創建隨機撥出和來電呼叫?
- 10. 如何取消使用AMI來源創建的呼叫
- 11. MotionEnded未連續呼叫
- 12. 未解決呼叫錯誤
- 13. 當使用resp api創建呼叫時,沒有振鈴的呼叫
- 14. 來自MTA的STA呼叫
- 15. 外來呼叫上的scoped_lock
- 16. 基於來自呼叫
- 17. Twilio呼叫轉移來電
- 18. 星號呼叫文件呼叫未通過
- 19. android.provider.CallLog.Calls.TYPE傳出呼叫未應答,傳出呼叫被拒絕?
- 20. 斯卡拉來自多個未來呼叫的聚合結果
- 21. %0D%0A呼叫回叫時不會創建換行符
- 22. SQL Server:創建未來日期
- 23. 呼叫用foreach
- 24. Api呼叫請求每小時呼叫限制1個呼叫
- 25. 以角度呼叫另一個http呼叫中的http呼叫
- 26. 呼叫
- 27. 呼叫
- 28. 呼叫
- 29. 來自OSGI包的呼叫數據源
- 30. 呼叫不按下呼叫按鈕
什麼樣的CTE的你已經嘗試過?你有數字表嗎? – HABO 2013-05-08 02:13:47