Ⅰ sql當前時間加一天
Declare @Date datetime
Set @Date = '2002-12-30 '
Set @Date = @Date - 1
print @Date
Ⅱ sql 日期函數 加一天
select DateAdd (expire_date,1,'2012-06-24'),expire_date from A
你這個語句中第一個參數你對不對暫時還看不出,但是最後一個參數你傳入的是一個字元串 ,它需要的是個日期格式.當然就不行了,需要轉換,還有,如果你只是加一天的話,第一個參數固定寫成day就可以
Ⅲ sql查詢中日期加減的問題
他們說的那個dateadd 不是oracle的函數。是sqlserver 的,你要前一天的
可以
SELECT SYSDATE-1 FROM DUAL 直接減一就是默認減一天。就算是1號 也會變成上個月的最後一天
Ⅳ SQL請教大家一個日期的加減法
ql語句處理時間——日期加減天數如下:
select date_add(now(), interval 1 day); -- 加1天
select date_add(now(), interval 1 hour); -- 加1小時
select date_add(now(), interval 1 minute); -- 加1分鍾
select date_add(now(), interval 1 second); -- 加1秒
select date_add(now(), interval 1 microsecond);-- 加1毫秒
select date_add(now(), interval 1 week);-- 加1周
select date_add(now(), interval 1 month);-- 加1月
select date_add(now(), interval 1 quarter);-- 加1季
select date_add(now(), interval 1 year);-- 加1年
(4)sql加一天減一秒是幾號擴展閱讀
SQL中常用日期函數
1、GETDATE() 返回當前系統日期;
SELECT GETDATE()
2、DATEADD(日期部分,常數,日期) 返回將日期的指定日期部分加常數後的結果返回;
--常數為正
SELECT DATEADD(YY,1,GETDATE())
--等同於
SELECT DATEADD(YEAR,1,GETDATE())
--常數為負數
SELECT DATEADD(YY,-2,GETDATE())
--常數為小數(直接捨去小數部分)
SELECT DATEADD(YY,2.4,GETDATE())
SELECT DATEADD(YY,2.5,GETDATE())
SELECT DATEADD(YY,2.6,GETDATE())
Ⅳ sql語句怎麼來對日期進行相加減
日期增減計算
使用DATEADD 函數
1> SELECT '現在' AS [日期], GETDATE() AS [數據]
2> UNION ALL
3> SELECT '下一秒' AS [日期], DATEADD(ss, 1, GETDATE() ) AS [數據]
4> UNION ALL
5> SELECT '下一分' AS [日期], DATEADD(mi, 1, GETDATE() ) AS [數據]
6> UNION ALL
7> SELECT '下一小時' AS [日期], DATEADD(hh, 1, GETDATE() ) AS [數據]
8> UNION ALL
9> SELECT '明天' AS [日期], DATEADD(dd, 1, GETDATE() ) AS [數據]
10> UNION ALL
11> SELECT '下周' AS [日期], DATEADD(ww, 1, GETDATE() ) AS [數據]
12> UNION ALL
13> SELECT '下月' AS [日期], DATEADD(mm, 1, GETDATE() ) AS [數據]
14> UNION ALL
15> SELECT '下季度' AS [日期], DATEADD(qq, 1, GETDATE() ) AS [數據]
16> UNION ALL
17> SELECT '明年' AS [日期], DATEADD(yy, 1, GETDATE() ) AS [數據]
18> go
日期 數據
-------- -----------------------
現在 2011-02-11 21:27:15.750
下一秒 2011-02-11 21:27:16.750
下一分 2011-02-11 21:28:15.750
下一小時 2011-02-11 22:27:15.750
明天 2011-02-12 21:27:15.750
下周 2011-02-18 21:27:15.750
下月 2011-03-11 21:27:15.750
下季度 2011-05-11 21:27:15.750
明年 2012-02-11 21:27:15.750
(9 行受影響)
兩個日期之間的差值
1> SELECT '年' AS '日期部分', DATEDIFF(yy, '2012-12-21', GETDATE()) AS [數值]
2> UNION ALL
3> SELECT '季度' AS '日期部分', DATEDIFF(qq, '2012-12-21', GETDATE()) AS [數值]
4> UNION ALL
5> SELECT '月' AS '日期部分', DATEDIFF(mm, '2012-12-21', GETDATE()) AS [數值]
6> UNION ALL
7> SELECT '日' AS '日期部分', DATEDIFF(dd, '2012-12-21', GETDATE()) AS [數值]
8> UNION ALL
9> SELECT '周' AS '日期部分', DATEDIFF(ww, '2012-12-21', GETDATE()) AS [數值]
10> UNION ALL
11> SELECT '時' AS '日期部分', DATEDIFF(hh, '2012-12-21', GETDATE()) AS [數值]
12> UNION ALL
13> SELECT '分' AS '日期部分', DATEDIFF(mi, '2012-12-21', GETDATE()) AS [數值]
14> UNION ALL
15> SELECT '秒' AS '日期部分', DATEDIFF(ss, '2012-12-21', GETDATE()) AS [數值]
16> go
日期部分 數值
---- -----------
年 -1
季度 -7
月 -22
日 -679
周 -97
時 -16275
分 -976470
秒 -58588175
(8 行受影響)
Ⅵ 如何在SQL中給一個日期加上一天
很簡單,使用系統的內置函數DATEADD()函數即可,例如給當前時間加上一天:
select DATEADD(DAY,1,GETDATE());給表中的日期列加上一天:DATEADD(DAY,1,日期)
當然,這個函數不止能單一的實現,語法其實是DATEADD(需要計算的時間類型,相距數量,日期欄位),比如你可以推算今天的前一個月DATEADD(month,-1,GETDATE()),即可得到一個月前是幾號
Ⅶ SQL提交為當前時間,並且減一天.時間不需要精確到時分秒
不是很明白你的意思! SQL提交為當前時間,並且減一天. 是指執行SQL後,插入數據到資料庫的當前時間減一天?需要弄明白才能幫到你。
Ⅷ sql時間加減
select
*
from
table
where
卡號='123'
and
datediff(mi,convert(datetime,日期
+'
'
+
時間),'2010/06/20
08:05:00')
between
-5
and
5
後面的就是日期和時間和在一起的時間
雖然這樣可以實現,但是建議把2個欄位和在一起用datetime類型
Ⅸ SQL語句 怎樣比較兩個日期的大小
慣例,在等號左邊盡量不要有對欄位的運算,所以一般用法有:
1、判斷其是否在某個日期區間:
Where CheckDate Between '2013-01-01' And '2013-01-31'
這個方法也可用於加幾天是多少,或減幾天是多少:
把起迄日期參數化,原CheckDate要加的,那就變成@BeginDate加,減也同理~
2、判斷其是否大於某天:
Where CheckDate >'2013-01-01' 或大於等於:Where CheckDate >='2013-01-01'
小於某天
Where CheckDate <'2013-01-01' 或小於等於:Where CheckDate <='2013-01-01'
3、判斷其是否等於某天:
如果Check欄位不帶時間,只是年月日,那直接等於就可以了;
Where CheckDate ='2013-01-01'
如果CheckDate欄位是攜帶時間的就會有差別;這一點,在上述所有方法中都需要注意
eg:CheckDate 實際存儲值可能是: 20130101 08:50:54:000 或 20130101 22:50:54:000
這時直接用上面的等號是抓不到的,因此或改寫成:
Where CheckDate >= '2013-01-01' And CheckDate < '2013-01-02'
當然也可以把'2013-01-01',定義為參數@Date DateTime
Where CheckDate >= @Date And CheckDate < @Date+1
不建議在等號左邊使用函數或計算對表欄位進行計算。
以上是兩個日期的判斷,另外有些日期處理函數可以了解一下:
DATEDIFF ( datepart , startdate , enddate )
返回指定的 startdate 和 enddate 之間所跨的指定 datepart 邊界的計數(帶符號的整數)。
eg:
Select DateDiff(DAY,'20130101','20130105')
1號到5號相差4天,輸出結果為4
常用的datepart 有:
datepart 縮寫
year yy, yyyy 年
month mm, m 月
day dd, d 日
week wk, ww 周
hour hh 時
minute mi, n 分
second ss, s 秒
DATEADD(datepart, number, date)
將表示日期或時間間隔的數值與日期中指定的日期部分相加後,返回一個新的 DT_DBTIMESTAMP 值。number 參數的值必須為整數,而 date 參數的取值必須為有效日期。
eg:
Select DATEADD(DAY,1,'20130101')
1號加1天就是2號;輸出結果為 『2013-01-02』
Number可以是負數就變成減幾天
DATEADD(datepart, number, date)
將表示日期或時間間隔的數值與日期中指定的日期部分相加後,返回一個新的 DT_DBTIMESTAMP 值。number 參數的值必須為整數,而 date 參數的取值必須為有效日期。
eg:
Select DATEPART(DAY,'20130101')
返回datepart描述的部分,輸出結果為 1
Ⅹ SQL 當天日期減去一天 應該如何寫
SQL語句使用DATEADD得到一個時間加上或減去指定天數之後的時間。也適用於小時、分鍾、秒鍾等等
DATEADD() 函數功能:在日期中添加或減去指定的時間間
語法:DATEADD(datepart,number,date)
date參數是合法的日期表達式。number是您希望添加的間隔數;對於未來的時間,此數是正數,對於過去的時間,此數是負數。
datepart參數可以是下列的值: