Rumah > pangkalan data > tutorial mysql > Bagaimana untuk Menukar Cap Waktu UNIX Bigint kepada DateTime dalam SQL Server?

Bagaimana untuk Menukar Cap Waktu UNIX Bigint kepada DateTime dalam SQL Server?

Patricia Arquette
Lepaskan: 2025-01-17 16:34:11
asal
523 orang telah melayarinya

How to Convert a Bigint UNIX Timestamp to DateTime in SQL Server?

SQL Server: Mengubah Cap Masa UNIX Bigint kepada Nilai DateTime

Panduan ini memperincikan penukaran cap masa UNIX yang besar kepada objek DateTime dalam SQL Server. Proses tersebut memerlukan formula untuk mengambil kira perbezaan masa antara zaman UNIX dan SQL Server.

Kaedah Penukaran:

Pernyataan SQL berikut berkesan melaksanakan penukaran:

<code class="language-sql">SELECT DATEADD(second, [unixtime], '19700101')
FROM [Table];</code>
Salin selepas log masuk

Memahami Formula:

  • '19700101': Ini mewakili zaman UNIX—titik permulaan untuk cap masa UNIX (1 Januari 1970, 00:00:00 UTC).
  • DATEADD(second, [unixtime], '19700101'): Fungsi DATEADD menambah bilangan saat yang ditentukan oleh [unixtime] (cap masa besar anda) ke zaman UNIX, menghasilkan yang sepadan Nilai DateTime.

Masa Zaman Diterangkan:

Masa zaman menandakan bilangan saat berlalu sejak zaman UNIX.

Menangani Isu Tahun 2038:

Fungsi

SQL Server DATEADD menggunakan hujah integer untuk bilangan saat. Cap masa yang melebihi 2,147,483,647 saat (kira-kira 68 tahun) akan mengakibatkan ralat limpahan aritmetik.

Menyelesaikan Had Tahun 2038:

Untuk mengatasinya, bahagikan cap masa kepada tahun dan baki saat, menggunakan dua operasi DATEADD berasingan. Pendekatan lanjutan ini mengendalikan cap masa selepas tahun 2038. (Contoh khusus pendekatan berbilang langkah ini perlu ditambah di sini jika mahu, menunjukkan pecahan kepada tahun dan baki saat.)

Atas ialah kandungan terperinci Bagaimana untuk Menukar Cap Waktu UNIX Bigint kepada DateTime dalam SQL Server?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan