Sql Server Tarih Fonksiyonları DATEADD
DATEADD belirtilen tarihin üzerine belirtilen süreyi ekler. DATEADD() fonksiyonu 3 argüment alır. Geriye tarih (smaldatetime) döndürür.
Kullanımı: DATEADD("tarihin kısaltması", "sayı", "tarih").
Hatırlatmak amacıyla tarih ve kısaltmaları tablosunu tekrar inceleyelim.
Tarihler | Kısaltmalar |
---|---|
year | yy, yyyy |
quarter | q, qq |
month | m, mm |
dayofyear | y, dy |
day | d, dd |
week | wk, ww |
weekday | w, dw |
hour | hh |
minute | n, mi |
second | s, ss |
millisecond | ms |
microsecond | mcs |
nanosecond | ns |
Şimdi örneklere geçelim...
Örnek - Bugünün bir ay sonrasını bulalım.
-- Bugünü öğrenelim bunun için GETDATE() kullanıyoruz
Select GETDATE()
-- Çıktısı : 2016-10-09 13:32:31.613
-- Şimdi ise 1 ay sonrasını bulalım
Select DATEADD(MM,1,GETDATE())
-- Çıktısı : 2016-11-09 13:32:31.613
Örnek - Şimdi sipariş tablomuz olsun burada bulunan bir siparişin bir ay sonra ödeme tarihini bulalım.
-- Şimdi siparişmizin 1 ay sonrasını bulalım
Select SiparisID, DATEADD(DD,30,SiparisTarih) from Siparisler
-- Aynı şekilde yy,1,tarih diyerek de 1 yıl sonrası
-- Veya w,2,tarih diyerek 2 hafta sonrasında bulabiliriz
Şiparis Tablomuz
SiparisID | SiparisTarih |
---|---|
1 | 2016-10-09 13:47:02.487 |
Sorgumuzun çıktısı:
SiparisID | Ödeme Tarihi |
---|---|
1 | 2016-11-09 13:47:02.487 |