2008-10-03 28 views

Trả lời

22
DECLARE @MyDate datetime 

-- ... set your datetime's initial value ...' 

DATEADD(d, 1, @MyDate) 
4
DECLARE @date DateTime 
SET @date = GetDate() 
SET @date = DateAdd(day, 1, @date) 

SELECT @date 
121

Sử dụng các chức năng sau:

DATEADD(type, value, date) 
  • ngày là ngày bạn muốn thao tác

  • giá trị là giá trị integere bạn muốn thêm (hoặc trừ nếu bạn cung cấp một số âm)

  • loại là một trong số:

    • yy, yyyy: năm
    • qq, q: quý
    • mm, m: tháng
    • dy, y: ngày trong năm
    • dd, d: ngày
    • tuần, ww: Tuần
    • dw, w: tuần
    • hh: giờ
    • mi, n: phút
    • ss hoặc s: thứ hai
    • ms: millisecond
    • mCs: micro
    • ns: nano giây

CHỌN DATEADD (đ, 1, getdate()) sẽ trả về một hiện ngày + 1 ngày

http://msdn.microsoft.com/en-us/library/ms186819.aspx

+4

Vì vậy, sẽ CHỌN getdate() +1 –

+0

Tôi nghĩ bạn muốn sử dụng GETDATE() hoặc CURRENT_TIMESTAMP thay vì NOW() – GilM

1
Select getdate() -- 2010-02-05 10:03:44.527 

-- To get all date format 
select CONVERT(VARCHAR(12),getdate(),100) +' '+ 'Date -100- MMM DD YYYY' -- Feb 5 2010 
union 
select CONVERT(VARCHAR(10),getdate(),101) +' '+ 'Date -101- MM/DDYYYY' 
Union 
select CONVERT(VARCHAR(10),getdate(),102) +' '+ 'Date -102- YYYY.MM.DD' 
Union 
select CONVERT(VARCHAR(10),getdate(),103) +' '+ 'Date -103- DD/MM/YYYY' 
Union 
select CONVERT(VARCHAR(10),getdate(),104) +' '+ 'Date -104- DD.MM.YYYY' 
Union 
select CONVERT(VARCHAR(10),getdate(),105) +' '+ 'Date -105- DD-MM-YYYY' 
Union 
select CONVERT(VARCHAR(11),getdate(),106) +' '+ 'Date -106- DD MMM YYYY' --ex: 03 Jan 2007 
Union 
select CONVERT(VARCHAR(12),getdate(),107) +' '+ 'Date -107- MMM DD,YYYY' --ex: Jan 03, 2007 
union 
select CONVERT(VARCHAR(12),getdate(),109) +' '+ 'Date -108- MMM DD YYYY' -- Feb 5 2010 
union 
select CONVERT(VARCHAR(12),getdate(),110) +' '+ 'Date -110- MM-DD-YYYY' --02-05-2010 
union 
select CONVERT(VARCHAR(10),getdate(),111) +' '+ 'Date -111- YYYY/MM/DD' 
union 
select CONVERT(VARCHAR(12),getdate(),112) +' '+ 'Date -112- YYYYMMDD' -- 20100205 
union 
select CONVERT(VARCHAR(12),getdate(),113) +' '+ 'Date -113- DD MMM YYYY' -- 05 Feb 2010 


SELECT convert(varchar, getdate(), 20) -- 2010-02-05 10:25:14 
SELECT convert(varchar, getdate(), 23) -- 2010-02-05 
SELECT convert(varchar, getdate(), 24) -- 10:24:20 
SELECT convert(varchar, getdate(), 25) -- 2010-02-05 10:24:34.913 
SELECT convert(varchar, getdate(), 21) -- 2010-02-05 10:25:02.990 


---================================== 
-- To get the time 
select CONVERT(VARCHAR(12),getdate(),108) +' '+ 'Date -108- HH:MM:SS' -- 10:05:53 

select CONVERT(VARCHAR(12),getdate(),114) +' '+ 'Date -114- HH:MM:SS:MS' -- 10:09:46:223 
SELECT convert(varchar, getdate(), 22) -- 02/05/10 10:23:11 AM 
----============================================= 
SELECT getdate()+1 
SELECT month(getdate())+1 
SELECT year(getdate())+1 
+0

Điều này có vẻ là câu trả lời cho một câu hỏi khác. – zisha

8

Các truy vấn sau đây tôi đã sử dụng trong sql-server 2008, nó có thể là giúp bạn.

For add day DATEADD(DAY,20,GETDATE()) 

* 20 là số lượng ngày

Để biết thêm chi tiết click here

13

Hãy thử đoạn mã sau sẽ Thêm một ngày để ngày hiện tại

select DateAdd(day, 1, GetDate()) 

Và trong cùng một cách có thể sử dụng Năm , Tháng, Giờ, Thứ hai, vv thay vì ngày trong cùng một chức năng

Các vấn đề liên quan