Dalam Pelayan SQL, nilai DATETIMEOFFSET menyimpan kedua-dua tarikh dan masa, serta offset daripada UTC. Untuk menukar medan DATETIMEOFFSET kepada medan DATETIME sambil mengambil kira offset, dengan berkesan menukarnya kepada UTC, pertimbangkan perkara berikut:
Menukar nilai DATETIMEOFFSET kepada DATETIME2 menggunakan CONVERT atau CAST akan menukar nilai kepada UTC secara automatik dengan membuang mengimbangi. Contohnya:
DECLARE @createdon DATETIMEOFFSET = '2008-12-19 17:30:09.0000000 +11:00'; SELECT CONVERT(DATETIME2, @createdon, 1); -- Output: 2008-12-19 06:30:09.0000000
Walau bagaimanapun, menukar DATETIMEOFFSET kepada DATETIME tidak menetapkan offset kepada UTC. Untuk menukar secara eksplisit kepada DATETIME dengan offset 00:00, gunakan fungsi DATETIMEOFFSET:
SELECT CONVERT(DATETIMEOFFSET, CONVERT(DATETIME2, @createdon, 1)); -- Output: 2008-12-19 06:30:09.0000000 +00:00
Atas ialah kandungan terperinci Bagaimana Saya Menukar SQL Server DATETIMEOFFSET kepada UTC DATETIME?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!