全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:198
推到 Plurk!
推到 Facebook!

SQL 日期陳列

尚未結案
weaksdfg
一般會員


發表:18
回覆:21
積分:7
註冊:2011-12-07

發送簡訊給我
#1 引用回覆 回覆 發表時間:2017-01-03 11:47:25 IP:60.251.xxx.xxx 未訂閱
各位大大好~
新年來發第一個問題
我想問的是
假如:資料裡面有存2016/12/28和2017/1/2
我想要列出
2016/12/28
2016/12/29
2016/12/30
2016/12/31
2016/1/1
2016/1/2
這樣的顯示
SQL語法該如何下?
pedro
尊榮會員


發表:152
回覆:1174
積分:865
註冊:2002-06-12

發送簡訊給我
#2 引用回覆 回覆 發表時間:2017-01-03 12:51:47 IP:211.75.xxx.xxx 未訂閱
hi weaksdfg,

在Sql 2008之後, 這段應該能達到你要的需求

[code sql]
WITH mycte AS
(
SELECT CAST('2016/12/28' AS DATETIME) DateValue
UNION ALL
SELECT DateValue 1
FROM mycte
WHERE DateValue 1 < '2017/1/2'
)
SELECT DateValue
FROM mycte
OPTION (MAXRECURSION 0)
select *
from mycte m left join yourtable u on m.datevalue=u.datefield
[/code]
參考來源
http://stackoverflow.com/questions/1378593/get-a-list-of-dates-between-two-dates-using-a-function

===================引 用 weaksdfg 文 章===================
各位大大好~
新年來發第一個問題
我想問的是
假如:資料裡面有存2016/12/28和2017/1/2
我想要列出
2016/12/28
2016/12/29
2016/12/30
2016/12/31
2016/1/1
2016/1/2
這樣的顯示
SQL語法該如何下?
系統時間:2017-02-27 12:28:46
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!