SQL Server'da getdate()
'u EST zamanına dönüştürmek istiyorum.Getdate() - EST'ye dön
cevap
GETUTCDATE() öğesini ve oradan ofseti mi gerçekleştirdiniz? Eğer standart saat gibi EST kastediyorsan , o UTC-5, yani
select dateadd(hour,-5,GETUTCDATE())
WRONG, bu gün ışığından yararlanma saati için hesap değildir. – AndroidDebaser
@AndroidDebaser Gün ışığından yararlanma saati hesaplamanıza gerek yoktur. EST her zaman UTC-5 olacaktır. Gözlemci gün ışığından yararlanma saati olan yerler EDT'ye geçecek ve OP özellikle EST'yi istedi. Yani bu cevap doğru. – solartic
Ayrıca
select SWITCHOFFSET (SYSDATETIMEOFFSET(), '-05:00')
+1 'SwitchOffset' – RichardTheKiwi
Bu, gün ışığından yararlanma için çalışmaz, dolayısıyla yılın sadece yarısı kadar yanlış olur. – AndroidDebaser
http://stackoverflow.com/users/832388/androiddebaser ile tamamen katılıyorum –
GetDate deneyebilirsiniz() sunucusundan kendisinden sistem zamanıdır.
Şimdi GetDate() öğesinin saat farkını alın ve şimdi EST'de bu saati kullanın, burada 1, söz konusu farkın (bu örnekte sunucu Merkezi Saat dilimi) olduğu anlamına gelir (Bu ayrıca sunucunuzu varsaymaktadır) EDT GMT-4 saat iken) DST için
SELECT DATEADD(hour, 1, GETDATE()) AS EST
EST muhasebe edilir GMT-5 saattir.
EST almak için:select dateadd(hour,-5,GETUTCDATE())
almak için EDT:
`select dateadd(hour,-4,GETUTCDATE())`
Bunlar hepsi yanlış cevaplar
EST'den UTC'ye her zaman 5 saat fark etmez. Gün ışığına bağlı olarak değişir 4 saat veya 5 saat olabilir. http://ww2010.atmos.uiuc.edu/(Gh)/guides/maps/utc/frutc.rxml
Eğer Yaz saati uygulamasıyla, sen başlangıç ve yaz saati sonunu tespit eder ve daha sonra değişken ofset uygulayan bir işlev gerekir, örneğin doğu zamanı gibi, çıkışa bir yerel saat çalışıyorsanız: Ben ettik Bu bulundu: http://joeyiodice.com/convert-sql-azure-getdate-utc-time-to-local-time/ faydalı.
Hangi SQL Server sürümü? – gbn
Doğu saatini aradığınızı söylemek daha doğru olur mu: I.E. insanların gün ışığından yararlanma zamanlarını gözlemlediği doğu kıyısında saat kaçta? – Empiricist