線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1087
推到 Plurk!
推到 Facebook!

各位大哥想問一個日期問題....

答題得分者是:pedro
ninimiffy
一般會員


發表:1
回覆:1
積分:0
註冊:2006-08-11

發送簡訊給我
#1 引用回覆 回覆 發表時間:2006-08-11 15:28:59 IP:220.228.xxx.xxx 未訂閱

目前資料庫的欄位是yyyy/MM/dd的文字型態目前想要select出來今天或指定日期的後十日,但是我不要年份,只要資料庫裡符合今天日期的後十天(不含年份喲...)不知道要如何做,請各位大哥指導一下.....謝謝

pedro
尊榮會員


發表:152
回覆:1187
積分:892
註冊:2002-06-12

發送簡訊給我
#2 引用回覆 回覆 發表時間:2006-08-11 16:04:31 IP:60.248.xxx.xxx 未訂閱

declare @temp table(tDate char(10))

insert @temp
select '2005/10/11'

insert @temp
select '2006/08/13'

select Right(tDate,5) as mmdd from @temp where datediff(d,Cast(tDate as datetime),GetDate())<=10

ninimiffy
一般會員


發表:1
回覆:1
積分:0
註冊:2006-08-11

發送簡訊給我
#3 引用回覆 回覆 發表時間:2006-08-11 16:27:21 IP:220.228.xxx.xxx 未訂閱
這位幫忙的大哥,我看不太懂您的語法,如果可以的話可以解釋一下嗎,還有啊,就是他出來的日期好像不是今天起的後十日內的資料?
===================引 用 文 章===================

declare @temp table(tDate char(10))

insert @temp
select '2005/10/11'

insert @temp
select '2006/08/13'

select Right(tDate,5) as mmdd from @temp where datediff(d,Cast(tDate as datetime),GetDate())<=10

pedro
尊榮會員


發表:152
回覆:1187
積分:892
註冊:2002-06-12

發送簡訊給我
#4 引用回覆 回覆 發表時間:2006-08-11 17:02:42 IP:60.248.xxx.xxx 未訂閱

這個語法select Right(tDate,5) as mmdd from @temp where datediff(d,Cast(tDate as datetime),GetDate())<=10

也就是找出從GetDate()今天起,差DateDiff()十天以內的資料,並把日期欄位只取後五碼

如果是找到

'2006/08/13'這一筆

答案是'08/13'

pedro
尊榮會員


發表:152
回覆:1187
積分:892
註冊:2002-06-12

發送簡訊給我
#5 引用回覆 回覆 發表時間:2006-08-11 17:04:39 IP:60.248.xxx.xxx 未訂閱
您若需改十天以後,把<=,改成>大於就成了
系統時間:2024-05-19 14:42:58
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!