SQL DateTime Fonksiyonlarının Kullanımı

SQL DateTime Fonksiyonları, SQL’de en çok kullanacağımız fonksiyonlardan bazılarıda datetime fonksiyonlarıdır kimi zaman yaş, ay, yıl, gün veya tarih ekleme çıkarma gibi işlemlere ihtiyaç duyarız SQL tarafında bu ihtiyaçlarımızı DateTime Fonksiyonları karşılamaktadır.

SQL DateTime Fonksiyonlarının Kullanımı

SQL DateTime Fonksiyonlarının Kullanımı

Sql Server DateTime(Tarih Saat) Fonksiyonları

FonksiyonAçıklama
GETDATE()Sistemin o anki tarih ve saatini verir
DATEDIFF()İki tarih arasındaki farkı gösterir
DATEADD()Parametre olarak geçeceğimiz tarih’e gün, ay, yıl eklemek için kullanırız.
DATEPART()Parametre olarak geçtiğimiz tarihin sadece gün, ay, yıl şeklinde parçalayıp alabiliriz.
CONVERT()Tarih ve saat veri türlerini farklı formatlarda göstermek için kullanabiliriz.
DAY()Parametre olarak geçtiğimiz tarihin gün kısmını verir.
MONTH()Parametre olarak geçtiğimiz tarihin ay kısmını verir.
YEAR()Parametre olarak geçtiğimiz tarihin yıl kısmını verir.

Şimdi ise Örneklere Geçelim

1- Getdate Fonksiyonu ile bugünün tarihini alalım

Bu fonksiyonda ise GETDATE() fonksiyonu ile bugünün tarihini alıyoruz.

2- Datediff Fonksiyonu ile belirlediğimiz bir tarih ile bugünkü tarih arasındaki gün sayısını alalım

Bu fonksiyonda ise ilk parametrede hesaplanacak iki tarih arasındaki sonucun size ne olarak geri dönmesini istersiniz ben DAY yazarak sonucun bana gün olarak geri dönmesini sağlıyorum 2.parametreye başlagıç tarihi belirtilmelidir siz buraya tablonuzda bulunan bir alanı kullanabilirsiniz ama ben manuel olarak girilmiş bir tarih yazıyorum 3.parametreye ise bitiş tarihi belirtilmektedir

3- DateAdd Fonksiyonu ile bugünkü tarihe gün,ay, yıl ekleme

Bu örneğimizde DATEADD fonksiyonun ilk parametresine ekleme yapacağımız tarih formatını belirtiyoruz DAY(GÜN), MONTH(AY), YEAR(YIL) olarak ve ikinci parametrede ise ekleme yapılacak değeri belirtiyoruz 3.parametrede ise siz tablonuzdan bir alanı belirtebilirsiniz ama ben örnek olarak bugünün tarihini GETDATE() fonksiyonuyla alıyorum.

4- DatePart Fonksiyonu ile belirli tarih içerisinden Gün, Ay, Yıl olarak parça halinde alabiliriz.

Bu sorguda DATEPART fonksiyonunun birinci parametresinde kullanılan DAY(GÜN) fonksiyonu ile 2.parametrede kullanmış olduğumuz GETDATE fonksiyonuyla bugünün tarihinden sadece günü alıyoruz.

5,6,7- DAY, MONTH, YEAR fonksiyonları ile GÜN, AY, YILI alma

Bu fonksiyonlar ile tablonuzda bir tarih alanını belirtebilir isterseniz aşağıdaki örnekte olduğunu GETDATE fonksiyonunu kullanarak parça halinde Gün, Ay, Yılı alabilirsiniz

Sql Server Tarih Veri Türleri

Şimdide Sql Server tarih veya tarih/saat veri tiplerinin veritabanında hangi formatta saklandığı ile ilgili bilgilere gözatalım

Veri TürüSaklanma Formatı
DATEYYYY:MM:DD
DATETIMEYYYY-MM-DD HH:MI:SS
SMALLDATETIMEYYYY-MM-DD HH-MI:SS
TIMESTAMPBenzersiz bir sayı

Kaynak

SQL DateTime Fonksiyonlarının Kullanımı
4.33 (86.67%) 9 oy

Murat ÖNER

1989 yılında Kocaelinin Dilovası ilçesinde doğdum ilkokul ve lise eğitimimi Kocaeli’de aldım, önlisans üniversite eğitimimi Mehmet Akif Ersoy Üniversitesi Gölhisar Meslek Yüksekokulu’nda bilgisayar programcılığı bölümünde yaptım. Üniversite dönemi boyunca Microsoft'un student partner projesinde yer aldım ve diğer student partner öğrencileri ile birçok farklı projede yer aldım. Üniversite eğitimi tamamlandıktan sonra staj yapmış olduğum Ries Technologies şirketinde yazılım geliştirici ve web designer olarak görev aldım ardından Gen Yazılım firmasında ERP ve HBYS sistemleri ile ilgili yazılım geliştirmeye devam ettim. Şuan aktif olarak mobil, web ve masaüstü uygulamalar geliştirmeye devam etmekteyim.

Sevebilirsin...

6 Yanıt

  1. abdullah dedi ki:

    select *from zamanlar tablomdaki saat 10:00 aolarak girilen veriyi datepart kullanarak sistem saati 10 olduğu zaman nasıl çekebilirim ?

    • Murat ÖNER dedi ki:

      Veriyi belirlenmiş bir tarih veya saatte çekmek için programlama tarafında(C#, PHP, Delphi v.b) task scheduler kütüphanesi kullanarak yapabilirsiniz. Sizin belirtmiş olduğunuz tablodaki saat alanı sistem saati ile eşleştiğinde task scheduler devreye girecek ve istediğiniz sorguyu bu şekilde çalıştırabileceksiniz tabi task scheduler’e zamanlar tablonuzdaki tüm zamanlanacak görevleri eklemelisiniz.

      • abdullah dedi ki:

        peki hocam asp.net’te dediğinizi kullanarak yaptım başarı ile çektim web sayfasını saat 10:00 da açtım saat on oldu adlı görev ekranda yazılı , saat 11:00’a geldiğinde dinamik olarak saat on bir oldu bilgisi gelirmi ?

        • Murat ÖNER dedi ki:

          Gelir bunu iki farklı yöntem ile yapabilirsin her dakikada bir javascript settimeout ile kontrol edebilirsin yada eğer trafik yüksek olan bir site olacak ise her dakikada bir sunucuya gidip gelmesi sorun olabilir bu durumda socket programlama ile yapabilirsiniz.

Bir Cevap Yazın

%d blogcu bunu beğendi: