Sqlserver
 sql >> Teknologi Basis Data >  >> RDS >> Sqlserver

cara mengonversi semua kolom datetime di sql server 2005 express database dengan data ke UTC

Dengan asumsi Anda mengetahui offset antara UTC dan zona waktu tempat data disimpan, ini cukup sederhana:

DECLARE @offset INT;
SET @offset = <offset>;
UPDATE table SET col = DATEADD(HOUR, @offset, col);

Perhatikan bahwa mungkin negatif atau positif, saya tidak tahu Anda berada di sisi Greenwich yang mana.

Tentu saja ini menjadi lebih rumit jika Anda berada di zona waktu yang mengamati waktu musim panas; dalam hal ini Anda mungkin memerlukan solusi yang lebih luas seperti menggunakan tabel kalender. Ini sangat rumit jika data Anda diperluas kembali sebelum George Bush mengubah aturan DST Amerika, misalnya. Saya memiliki artikel lama yang mungkin berguna ; seri yang lebih baru ada di sini:

Juga jika ada data Anda yang jatuh di jendela itu antara 12:00 dan 2:00 pada hari musim semi maju/mundur, di mana saya tidak pernah yakin apakah itu benar untuk mengubahnya karena ini adalah hari pergantian atau tidak berubah karena ini sebelum jam 2 pagi.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Definisi laporan SSRS lebih baru dari Server

  2. Mendapatkan minimal dua nilai dalam SQL

  3. SQL Server 2008 CTE Rekursi

  4. Apakah ada cara/alat untuk mengidentifikasi perkiraan waktu berjalan kueri di SQL SERVER

  5. Bagaimana Menyisipkan Catatan berdasarkan Sisipan Sebelumnya?