Genel

SQL Hazır Tarih Ve Saat Metotları

— Getdate: Sistemin güncel tarih saatini alır.

select getdate();--şuan bulunduğumuz tarihi verir.

— GETUTCDATE: +0 zaman dilinindeki tarih saati getirir.

select GETUTCDATE();--merkezi saati öğrenmiş oluyoruz

–YEAR(tarih): Girilen tarih parametresindeki yılı getirir.

select YEAR(getdate());--yılın tarihini gösterir

–(Örnek) öğrencilerin adını ve yaşını listeleyiniz

select ograd,dtarih,year(getdate())-year(dtarih) as yaş from ogrenci

–Month(tarih): Girilen tarih parametresindeki ayı getirir.

select month(getdate())--yılın hangi ayı olduğunu ekrana yazdırır

–(Örnek) 4 nisanda doğan öğrenciler

select ograd,dtarih from ogrenci where month(dtarih)=4 and day(dtarih)=4

–Day(tarih):Girilen tarih parametresindeki günü getirir.

select day(getdate()) --yılın hangi günü olduğunu gösterir

–DATEPART(param1,param2): param2 ile belirtilen tarihin param1 ile belirtilen kısmını alır.

param1: örneğin yıl için yy, ayın gün için d, ayın için mm, yılın günü için dy gibi kısaltmalar kullanılır.

İlgili alandaki tarih / saat verisinden istenilen bölümü alır.
Alınabilecek bölümlerden bazıları: yy(YEAR), mm(MONTH), dd(DAY), hh(HOUR), mi(MINUTE)

select DATEPART(MI,getdate())
select datepart(S,getdate())
select datepart(dw,getdate())
select datepart(q,getdate())

–DATENAME(param1,param2) :param2 ile belirtilen tarihin ay yada gün içimlerini öğrenebiliriz.

Not: Sql Server diline göre getirmektedir. Türkçe için daha önceden set language Turkish komutu çalıştırılmalıdır.

fonksiyonu belli bir tarih içindeki aya ait ismi, güne ait ismi döndürür

select datename(dw,getdate())
select datename(m,getdate())

–DATEADD

Belirtilen değer ve parametre kadar ekleme yapar. Buradaki işlem veritabanında herhangi bir güncelleme işlemi yapmaz. Sadece sorgulama sonucunda elde edilen değere ekleme yapıp ekrana yazar.

select dateadd(mi,200,getdate())--select dateadd(mi,-200,getdate())ekleyeceğimiz sayıları negatif yazarsak çıkartır

–Datediff

select datediff(yy,'15.03.1999',getdate())

–İSDATE

Ifade , geçerli bir tarih ise, SQL Server’da ISDATE işlevi 1 döndürür . Aksi takdirde 0 döndürür.

select ISDATE('29.02.2010')--0 döndürür yani bu yılda şubat ayı 28 çeker bu yüzden tarih olarak kabul etmez
select ISDATE('29.02.2012')--1 döndürür yani 4'e bölünebilen yıllarda 29 çektiği için doğru olarak kabul eder

 

Yorum

Yorum Yap