Sistem tarih ve saatini döndüren fonksiyonlar

SQL Server'da Verileri İşlemek için Fonksiyonlar

Ana Voicu

Data Engineer

Tarih ve saatle çalışırken yaygın hatalar

  • Tutarsız tarih-saat biçimleri veya desenleri
  • Aritmetik işlemler
  • Saat dilimi sorunları
SQL Server'da Verileri İşlemek için Fonksiyonlar

SQL Server'da saat dilimleri

  • Yerel saat dilimi
  • UTC saat dilimi (Eşgüdümlü Evrensel Zaman)
SQL Server'da Verileri İşlemek için Fonksiyonlar

İşletim sisteminin tarih ve saatini döndüren fonksiyonlar

Yüksek hassasiyet

  • SYSDATETIME()
  • SYSUTCDATETIME()
  • SYSDATETIMEOFFSET()

Düşük hassasiyet

  • GETDATE()
  • GETUTCDATE()
  • CURRENT_TIMESTAMP
SQL Server'da Verileri İşlemek için Fonksiyonlar

Yüksek hassasiyetli fonksiyon örneği

SELECT 
    SYSDATETIME() AS [SYSDATETIME],
    SYSDATETIMEOFFSET() AS [SYSDATETIMEOFFSET],  
    SYSUTCDATETIME() AS [SYSUTCDATETIME];
| [SYSDATETIME]               | [SYSDATETIMEOFFSET]                | [SYSUTCDATETIME]            |
|-----------------------------|------------------------------------|-----------------------------|
| 2019-04-15 00:35:38.8740380 | 2019-04-15 00:35:38.8740380 +03:00 | 2019-04-14 21:35:38.8740380 |
SQL Server'da Verileri İşlemek için Fonksiyonlar

Düşük hassasiyetli fonksiyon örneği

SELECT 
    CURRENT_TIMESTAMP AS [CURRENT_TIMESTAMP], 
    GETDATE() AS [GETDATE] ,
    GETUTCDATE() AS [GETUTCDATE];
| [CURRENT_TIMESTAMP]     | [GETDATE]               | [GETUTCDATE]            |
|-------------------------|-------------------------|-------------------------|
| 2019-04-15 06:42:56.010 | 2019-04-15 06:42:56.010 | 2019-04-15 03:42:56.010 |
SQL Server'da Verileri İşlemek için Fonksiyonlar

Yalnızca tarihi getirme

SELECT 
    CONVERT(date, SYSDATETIME()) AS [SYSDATETIME], 
    CONVERT(date, SYSDATETIMEOFFSET()) AS [SYSDATETIMEOFFSET], 
    CONVERT(date, SYSUTCDATETIME()) AS [SYSUTCDATETIME], 
    CONVERT(date, CURRENT_TIMESTAMP) AS [CURRENT_TIMESTAMP],
    CONVERT(date, GETDATE()) AS [GETDATE], 
    CONVERT(date, GETUTCDATE()) AS [GETUTCDATE];
| [SYSDATETIME] | [SYSDATETIMEOFFSET] | [SYSUTCDATETIME] | [CURRENT_TIMESTAMP] | [GETDATE]   |[GETUTCDATE]|
|---------------|---------------------|------------------|---------------------|-------------|--------------|
| 2018-11-22    | 2018-11-22          | 2018-11-22       | 2018-11-22          | 2018-11-22  | 2018-11-22   |
SQL Server'da Verileri İşlemek için Fonksiyonlar

Yalnızca saati getirme

SELECT 
    CONVERT(time, SYSDATETIME()) AS [SYSDATETIME], 
    CONVERT(time, SYSDATETIMEOFFSET()) AS [SYSDATETIMEOFFSET], 
    CONVERT(time, SYSUTCDATETIME()) AS [SYSUTCDATETIME], 
    CONVERT(time, CURRENT_TIMESTAMP) AS [CURRENT_TIMESTAMP],
    CONVERT(time, GETDATE()) AS [GETDATE], 
    CONVERT(time, GETUTCDATE()) AS [GETUTCDATE]
| [SYSDATETIME]    | [SYSDATETIMEOFFSET] | [SYSUTCDATETIME] | [CURRENT_TIMESTAMP] | [GETDATE]        | [GETUTCDATE]     |
|------------------|---------------------|------------------|---------------------|------------------|------------------|
| 07:03:13.4127151 | 07:03:13.4142034    | 04:03:13.4142034 | 07:03:13.4133333    | 07:03:13.4133333 | 04:03:13.4133333 |


SQL Server'da Verileri İşlemek için Fonksiyonlar

Ayo berlatih!

SQL Server'da Verileri İşlemek için Fonksiyonlar

Preparing Video For Download...