Ⅰ sql 怎麼計算兩個時間的天數
select datediff(part,StartDate,EndDate)
part:日期的哪一部分計算差額的參數
StartDate:開始時間
EndDate:截至時間
如:select datediff(dd,'2010-09-20','2010-09-21')
結果:1
即兩個日期相差1天;
select datediff(mm,'2010-09-20','2010-09-21')
結果:0
即兩個日期都是同月。
Ⅱ mssql計算兩個日期時間間隔多少分鍾
如果是求間隔的天數,但第一天不算,最後一天也不算入,則辦法如下:
1.同一月份,用日期數相減再減1,如1月2日到1月4日(0:00),4-2-1=1(天),只間隔了一天(1月3日)。
2.不同月份,則算出起始日期至月底的天數,再加上剩餘的月份的天數(如果是下個月則不用),再加上截止月的月初至截止日期的天數再減一,如3月2日到5月5日(0:00),31-2+30+5-1=63(天),間隔了3月3日到3月31日的29天,四月份的30天,1日到4日的4天。共63天。
如果是求求間隔的天數,但第一天不算,最後一天算入則辦法如下:
1.同一月份,用日期數相減,如1月2日到1月4日,4-2=2(天),間隔了兩天(1月3日和1月四號)。
2.不同月份,則算出起始日期至月底的天數,再加上剩餘的月份的天數(如果是下個月則不用),再加上截止月的月初至截止日期的天數,如3月2日到5月5日,
31-2+30+5=64(天),間隔了3月3日到3月31日的29天,四月份的30天,1日到5日的5天。共64天。
Ⅲ 在SQL Server中用那句sql語句可以得出兩天之間的天數
這是計算一個月第一天的SQL 腳本:
SELECT DATEADD(mm, DATEDIFF(mm,0,getdate()), 0)
這里我是用周(wk)的時間間隔來計算哪一天是本周的星期一。
SELECT DATEADD(wk, DATEDIFF(wk,0,getdate()), 0)
一年的第一天
現在用年(yy)的時間間隔來顯示這一年的第一天。
SELECT DATEADD(yy, DATEDIFF(yy,0,getdate()), 0)
季度的第一天
SELECT DATEADD(qq, DATEDIFF(qq,0,getdate()), 0)
Ⅳ 利用SQL語句如何獲得兩個日期之間相差的天數
用sysdate假設結束日期欄位是end_date
添加這個判斷條件:
where to_char("end_date",'YYYY') = to_char(sysdate,'YYYY') 判斷年相同
and to_char("end_date",'MM') = to_char(sysdate,'MM') 判斷月相同
and to_char("end_date",'dd') - to_char(sysdate,'dd') = 15 判斷日相同
或者:
where to_char("end_date",'YYYY-MM-DD') - to_char(sysdate,'YYYY-MM-DD')=15
(4)sql間隔天數擴展閱讀:
注意事項
DATEDIFF返回跨兩個指定日期的日期和時間邊界數。
語法:DATEDIFF ( datepart , startdate , enddate )
參數:datepart
是規定了應在日期的哪一部分計算差額的參數。下表列出了 Microsoft® SQL Server™ 識別的日期部分和縮寫。
startdate是返回datetime或smalldatetime值或日期格式字元串的表達式。 因為smalldatetime只精確到分鍾,所以當用smalldatetime值時,秒和毫秒總是 0。
如果只指定年份的最後兩位數字,則小於或等於"兩位數年份截止期"配置選項的值的最後兩位數字的數字所在世紀與截止年所在世紀相同。大於該選項的值的最後兩位數字的數字所在世紀為截止年所在世紀的前一個世紀。例如,如果 two digit year cutoff 為 2049(默認),則 49 被解釋為 2049,2050 被解釋為 1950。為避免模糊,請使用四位數的年份。
有關時間值指定的更多信息,請參見時間格式。有關日期指定的更多信息,請參見 datetime 和 smalldatetime。
enddate是計算的終止日期。enddate 是返回 datetime 或 smalldatetime 值或日期格式字元串的表達式。
返回類型:integer
注釋:startdate 是從 enddate 減去。如果 startdate 比 enddate 晚,返回負值。當結果超出整數值范圍,DATEDIFF 產生錯誤。對於毫秒,最大數是 24 天 20 小時 31 分鍾零 23.647 秒。對於秒,最大數是 68 年。
Ⅳ 在sql中怎樣計算兩個時間之間的天數求高人指點
DateDiff(d,Date,GetDate())
其中 d 為 "天" (計算天的差數 若為"h"則是小時,以次類推)
Date 為在資料庫里查詢出來的時間
GetDate()為獲取的當前時間(可以換成任何獲取時間),
Ⅵ 我要將這兩個表中的兩個日期之間的間隔天數算出來,用sql語句怎麼做,
這個 to_date('20020405','yyyymmdd') 要看你 appealdate是怎麼存數據決定的格式 如果數據 是 20020405 就是yyyymmdd ,如果是2002-04-05 才是你寫的那種 yyyy-mm-dd
我現在用的資料庫不是oracle,所以不太清楚oracle有啥區別,你試試
另:這是我網路的答案,希望對你有用
兩個日期間的天數
select floor(sysdate - to_date('20020405','yyyymmdd')) from al;
Ⅶ 利用SQL語句如何獲得兩個日期之間相差的天數
select TO_DATE(TO_CHAR(sysdate,'YYYYMMDD'),'YYYYMMDD') - TO_DATE(表欄位,'YYYYMMDD') from 表名;
表名和表欄位根據具體情況而定,
還有
date1為資料庫里輸入數據時的時間,date2為當前系統時間
應該是反的,date1應該是當前系統時間,date2是資料庫里輸入數據時的時間