在论坛中出现的比较难的sql问题:33(递归 连续日期问题 )
生活随笔
收集整理的這篇文章主要介紹了
在论坛中出现的比较难的sql问题:33(递归 连续日期问题 )
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
最近,在論壇中,遇到了不少比較難的sql問題,雖然自己都能解決,但發現過幾天后,就記不起來了,也忘記解決的方法了。
所以,覺得有必要記錄下來,這樣以后再次碰到這類問題,也能從中獲取解答的思路。?
MS-SQL取連續日期問題 ? http://bbs.csdn.net/topics/390635235?page=1#post-395995697我現在需要得出表A中所有FBeginDate和FEndDate字段間的日期
下面是我的解法,使用了遞歸查詢:
?
drop table tbcreate table tb(FBeginDate datetime,FEndDate datetime)insert into tb select '2010-10-01','2010-10-01' union all select '2010-10-01','2010-10-07' union all select '2011-01-30','2011-02-12';with t as ( select 1 as number union all select number + 1 from t where t.number < 100 )select tb.FBeginDate,tb.FEndDate,dateadd(day,t.number-1,FBeginDate) as '兩個日期之間的天' from tb inner join ton datediff(day,FBeginDate,FEndDate) +1 >= t.number order by tb.FBeginDate,'兩個日期之間的天'/* FBeginDate FEndDate 兩個日期之間的天 2010-10-01 00:00:00.000 2010-10-01 00:00:00.000 2010-10-01 00:00:00.000 2010-10-01 00:00:00.000 2010-10-07 00:00:00.000 2010-10-01 00:00:00.000 2010-10-01 00:00:00.000 2010-10-07 00:00:00.000 2010-10-02 00:00:00.000 2010-10-01 00:00:00.000 2010-10-07 00:00:00.000 2010-10-03 00:00:00.000 2010-10-01 00:00:00.000 2010-10-07 00:00:00.000 2010-10-04 00:00:00.000 2010-10-01 00:00:00.000 2010-10-07 00:00:00.000 2010-10-05 00:00:00.000 2010-10-01 00:00:00.000 2010-10-07 00:00:00.000 2010-10-06 00:00:00.000 2010-10-01 00:00:00.000 2010-10-07 00:00:00.000 2010-10-07 00:00:00.000 2011-01-30 00:00:00.000 2011-02-12 00:00:00.000 2011-01-30 00:00:00.000 2011-01-30 00:00:00.000 2011-02-12 00:00:00.000 2011-01-31 00:00:00.000 2011-01-30 00:00:00.000 2011-02-12 00:00:00.000 2011-02-01 00:00:00.000 2011-01-30 00:00:00.000 2011-02-12 00:00:00.000 2011-02-02 00:00:00.000 2011-01-30 00:00:00.000 2011-02-12 00:00:00.000 2011-02-03 00:00:00.000 2011-01-30 00:00:00.000 2011-02-12 00:00:00.000 2011-02-04 00:00:00.000 2011-01-30 00:00:00.000 2011-02-12 00:00:00.000 2011-02-05 00:00:00.000 2011-01-30 00:00:00.000 2011-02-12 00:00:00.000 2011-02-06 00:00:00.000 2011-01-30 00:00:00.000 2011-02-12 00:00:00.000 2011-02-07 00:00:00.000 2011-01-30 00:00:00.000 2011-02-12 00:00:00.000 2011-02-08 00:00:00.000 2011-01-30 00:00:00.000 2011-02-12 00:00:00.000 2011-02-09 00:00:00.000 2011-01-30 00:00:00.000 2011-02-12 00:00:00.000 2011-02-10 00:00:00.000 2011-01-30 00:00:00.000 2011-02-12 00:00:00.000 2011-02-11 00:00:00.000 2011-01-30 00:00:00.000 2011-02-12 00:00:00.000 2011-02-12 00:00:00.000 */?
轉載于:https://www.cnblogs.com/momogua/p/8304471.html
總結
以上是生活随笔為你收集整理的在论坛中出现的比较难的sql问题:33(递归 连续日期问题 )的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【filezilla】 ubuntu下安
- 下一篇: iOS开发基础-九宫格坐标(4)