ile yapıyorum. Yardıma ihtiyacım var.UTC, TimeZone ile başa çıkma ve GROUPTB'yi LocalTime
UTC tarihlerini veritabanında saklıyorum.
Örnek satırlar:
GeneratedAt:
- 2011-06-08 23:30
- 2011-06-09 03:30
- 2011-06-09 15:30
Kullanıcımın yerel saati -2 saattir (Orta Avrupa). 09'dan satırları istediğimde 3 satırım var.
Sorun, GROUP BY günüyle raporlama amaçlıdır. 08 için 2 ve 09 için 2 var ama bu yerel saat için doğru değil. Gördüğüm heryerde: "verileri UTC'de sakla" yı görüyorum. Bu nasıl düzgün yapılır?
GÜNCELLEME 1:
veri erişimi için ben NHibernate kullanıyorum ve veritabanı motorunun bağımsız çözümü tercih. Yani, Tarih/Zaman Boyut tablosu gibi bir şey (veya böyle bir şey) ile çözüm arıyorum.
Benim veri tablosu şöyle sütun vardır:
- GeneratedAt (datetime)
- GeneratedAt_Year (int)
- GeneratedAt_Month (int)
- GeneratedAt_Day (int)
- GeneratedAt_Hour (int)
Bu sayede kolayca g tarafından rouping: yıl, yıl + ay, yıl + ay + gün, yıl + ay + gün + saat. Ne yazık ki bu UTC. :(kullanıcı saat dilimleri başa bu çözümü refactor nasıl
?
Bir DATEADD fonksiyonunu uygulayarak istenilen Orta Avrupa saat diliminde datetime değerini sağlamasıdır tablonun bir görünüm yaratabilir
Bu (bazen bu -2, bazen-3) Gün ışığından ile çalışmaz. – Carra