Tarihlerle çalışma

SQL Server'da Fonksiyonlar ve Saklı Yordamlar Yazma

Meghan Kwartler

IT Consultant

GETDATE

SELECT GETDATE()
+-------------------------+
| 2019-02-27 13:11:59.590 |
+-------------------------+
DECLARE @CurrentDateTime AS datetime
SET @CurrentDateTime = GETDATE()
SELECT @CurrentDateTime
+-------------------------+
| 2019-02-27 13:14:36.517 |
+-------------------------+
SQL Server'da Fonksiyonlar ve Saklı Yordamlar Yazma
-- DATEADD Sözdizimi:  
DATEADD (datepart, number, date)  
-- data_type'a göre ifade döndürür
-- 2/27/2019'dan bir gün sonrası
SELECT DATEADD(day, 1, '2/27/2019')
+-------------------------+
| 2019-02-28 00:00:00.000 |
+-------------------------+
SQL Server'da Fonksiyonlar ve Saklı Yordamlar Yazma

DATEADD ve GETDATE

-- Dün
SELECT DATEADD(d, -1, GETDATE())
+-------------------------+
| 2019-02-26 09:20:50.013 |
+-------------------------+
-- Dün alınan taksi yolcu sayısı
SELECT SUM(PassengerCount)
FROM YellowTripData
WHERE CAST(PickupDate as date) = DATEADD(d, -1, GETDATE())
SQL Server'da Fonksiyonlar ve Saklı Yordamlar Yazma

DATEDIFF'i hatırlıyor musun?

SELECT DATEDIFF(day, '2/27/2019', '2/28/2019')
+---+
| 1 |
+---+
SELECT DATEDIFF(year, '12/31/2017', '1/1/2019')
+---+
| 2 |
+---+
SQL Server'da Fonksiyonlar ve Saklı Yordamlar Yazma
-- İçinde bulunduğumuz haftanın ilk günü
SELECT DATEADD(week, DATEDIFF(week, 0, GETDATE()), 0)
-- İlk adım
GETDATE()
+-------------------------+
| 2019-02-27 10:33:39.713 |
+-------------------------+
-- Bugün ile 1/1/1900 arasında kaç hafta var?
SELECT DATEDIFF(week, 0, GETDATE())
+------+
| 6217 |
+------+
SQL Server'da Fonksiyonlar ve Saklı Yordamlar Yazma
-- 6217. haftaya sıfır ekle
SELECT DATEADD(week, DATEDIFF(week, 0, GETDATE()),0)
+-------------------------+
| 2019-02-25 00:00:00.000 |
+-------------------------+
SQL Server'da Fonksiyonlar ve Saklı Yordamlar Yazma

Şimdi sıra sende: biraz tarihlerle oyna!

SQL Server'da Fonksiyonlar ve Saklı Yordamlar Yazma

Preparing Video For Download...