sqlserver時間差
① 在sqlserver裡面,以時間為條件,計算時間相近的兩條數據的差值怎麼計算,
select datediff(ss,(select max(v) from 表2),(select max(v) from 表1)
② sqlserver 系統時間減五分鍾怎麼寫
這樣就可以
selectdateadd(minute,-5,GETDATE())
③ MS SQL Server 中如何計算時間差
正常的話,算時間差的秒數是用datediff函數
比如
select datediff(s,'2013-01-07','2013-04-01')
這個就是算2013年4月1號到2013年1月7號之間的秒數
但是你說各個時間的時間差是什麼意思
後邊一行減前邊一行嗎?
還有你是mssql的哪個版本?
④ sqlserver日期計算的問題
首先說明你的DATEDIFF(dd,0,getdate()),這個表示獲取當前日期與0之間的天數差,dd表示是用來表示天.然後DATEADD(dd, DATEDIFF(dd,0,getdate()), 0),這個是用來表示0加上你剛才獲取的天數差後的日期~
具體的說明如下,你可以自己了解~
------------------------------------------------------------------
DateAdd函數 返回
返回包含一個日期的 Variant (Date),這一日期還加上了一段時間間隔。
語法
DateAdd(interval, number, date)
DateAdd 函數語法中有下列命名參數:
部分 描述
interval 必要。字元串表達式,是所要加上去的時間間隔。
number 必要。數值表達式,是要加上的時間間隔的數目。其數值可以為正數(得到未來的日期),也可以為負數(得到過去的日期)。
date 必要。Variant (Date) 或表示日期的文字,這一日期還加上了時間間隔。
設置
interval 參數具有以下設定值:
設置 描述
yyyy 年
q 季
m 月
y 一年的日數
d 日
w 一周的日數
ww 周
h 時
n 分鍾
s 秒
說明
可以使用 DateAdd 函數對日期加上或減去指定的時間間隔。例如,可以用 DateAdd 來計算距今天為三十天的日期;或者計算距現在為 45 分鍾的時間。
為了對 date 加上「日」,可以使用「一年的日數」 (「y」),「日」 (」d」) 或「一周的日數」 (」w」)。
DateAdd 函數將不返回有效日期。在以下實例中將 1 月31 日加上一個月:
DateAdd(m, 1, 31-Jan-95)
上例中,DateAdd 返回 1995 年 2 月 28 日,而不是 1995 年 2 月 31 日。如果 date 是 1996 年 1 月 31 日,則由於 1996 年是閏年,返回值是 1996 年 2 月 29 日。
如果計算的日期超前 100 年(減去的年度超過 date 中的年份),就會導致錯誤發生。
如果 number 不是一個 Long 值,則在計算時取最接近的整數值來計算。
注意 DateAdd 返回值的格式由 Control Panel設置決定,而不是由傳遞到date 參數的格式決定。
=========================================
DateDiff: SQL server函數
返回 Variant (Long) 的值,表示兩個指定日期間的時間間隔數目。
語法
DateDiff(interval, date1, date2[, firstdayofweek[, firstweekofyear]])
DateDiff 函數語法中有下列命名參數:
部分 描述
interval 必要。字元串表達式,表示用來計算date1 和 date2 的時間差的時間間隔
Date1□date2 必要;Variant (Date)。計算中要用到的兩個日期。
Firstdayofweek 可選。指定一個星期的第一天的常數。如果未予指定,則以星期日為第一天。
firstweekofyear 可選。指定一年的第一周的常數。如果未予指定,則以包含 1 月 1 日的星期為第一周。
設置
interval 參數的設定值如下:
設置 描述
yyyy 年
q 季
m 月
y 一年的日數
d 日
w 一周的日數
ww 周
h 時
n 分鍾
s 秒
----------------------------------------------------------
以上部分來源於網路
⑤ 用sqlserver查詢表中數據的時間與當前時間相差多少天
Year(getdate()) --當前年
Month(getdate()) --當前月
Day(getdate()) --當前日
Datediff(d,時間欄位,getdate()) --得到離過生日還剩的天數
⑥ sqlserver計算時間的月份差
SELECT TRUNC (months_betwen(SYSDATE ,SYSDATE -100 )) FROM DUAL
你看看
應該能滿足你的要求
⑦ SQLServer時間先後的比較問題!
select min(id) from test where modifytime > 動態的時間值
select max(id) from test where modifytime > 動態的時間值
這樣就可以了
⑧ sqlserver 如果某欄位為空就計算為空的這行和下一行的時間差
DECLARE@lastDateDATE,@dateDATE,@strnvarchar(30);
DECLAREc_test_mainCURSORFAST_FORWARDFOR
SELECT
baby.NICKNAME,--這個就是字元串
baby.CREATE_DATE--這個就是創建的時間
FROMT_BABYbaby
--打開游標.
OPENc_test_main;
--填充數據.
FETCHNEXTFROMc_test_mainINTO@str,@date;
set@lastDate=null;
--假如檢索到了數據,才處理.
WHILE@@fetch_status=0
BEGIN
IF@lastDateISNOTNULL
begin
print(DateDiff(minute,@lastDate,@date));
set@lastDate=null;
continue;
END
IF@str=''
begin
set@lastDate=@date;
end
else
begin
set@lastDate=null;
end
FETCHNEXTFROMc_test_mainINTO@str,@date;--游標至下一個
END;
--關閉游標
CLOSEc_test_main;
--釋放游標.
DEALLOCATEc_test_main;
中間一些信息什麼的替換替換就可以用,我這個只是單行單行的列印出來的,若你想返回一個結果集的話自己改一改就行。相信樓主修改修改還是沒問題的。
⑨ MYSQL與SQLSERVER的計算時間差
TIME_TO_SEC(TIMEDIFF('2010-08-20 12:01:00', '2010-08-20 12:00:00'))
⑩ sqlserver查詢兩個時間之間經歷了哪幾個月
select datediff(month,'2017-1-5','2018-05-25')/12 ,datediff(month,'2017-1-5','2018-05-25')%12
執行結果:1年4個月
注釋:
datediff(month,'2017-1-5','2018-05-25')取出兩個日期相差的總月數;
datediff(month,'2017-1-5','2018-05-25')/12 取出兩個日期相差的總年數。
datediff(month,'2017-1-5','2018-05-25')%12 取出總年數後,剩餘月數。