SQLite
 sql >> Teknologi Basis Data >  >> RDS >> SQLite

Dapatkan Tanggal/Waktu dari Stempel Waktu Unix di SQLite

Jika Anda memiliki stempel waktu Unix, Anda dapat menggunakan DATETIME() SQLite's berfungsi dengan unixepoch pengubah untuk menghitung tanggal dan waktu yang sebenarnya.

Sebagai alternatif, Anda dapat menggunakan DATE() berfungsi jika Anda hanya membutuhkan tanggal untuk dikembalikan. Dan juga memungkinkan untuk menggunakan TIME() berfungsi untuk mengembalikan porsi waktu saja.

Dapatkan Tanggal dan Waktu

Berikut ini contoh penggunaan DATETIME() berfungsi dengan unixepoch pengubah:

SELECT DATETIME(1793956207, 'unixepoch');

Hasil:

2026-11-06 09:10:07

Dapatkan Tanggalnya

Kita dapat menggunakan DATE() berfungsi jika kita hanya membutuhkan tanggal yang akan dikembalikan:

SELECT DATE(1793956207, 'unixepoch');

Hasil:

2026-11-06

Dapatkan Waktunya

Menggunakan TIME() fungsi mengembalikan hanya bagian waktu:

SELECT TIME(1793956207, 'unixepoch');

Hasil:

09:10:07

Kompensasi untuk Zona Waktu Lokal Anda

Anda juga dapat menambahkan localtime pengubah untuk menyesuaikan output ke zona waktu lokal Anda:

SELECT DATETIME(1793956207, 'unixepoch', 'localtime');

Hasil:

2026-11-06 19:10:07

localtime modifier mengasumsikan bahwa nilai waktu yang ditentukan berada dalam Universal Coordinated Time (UTC) dan menyesuaikan nilai waktu tersebut sehingga berada dalam localtime .

The auto Pengubah

Dari SQLite 3.38.0, kita dapat menggunakan auto pengubah menggantikan unixepoch pengubah:

SELECT DATETIME(1793956207, 'auto');

Hasil:

2026-11-06 09:10:07

Pengubah otomatis menyebabkan nilai ditafsirkan sebagai angka hari Julian atau stempel waktu Unix, bergantung pada nilai sebenarnya.

Jika nilainya antara 0.0 dan 5373484.499999 , kemudian ditafsirkan sebagai angka hari Julian (sesuai dengan tanggal antara -4713-11-24 12:00:00 dan 9999-12-31 23:59:59 , inklusif). Untuk nilai numerik di luar rentang angka hari Julian yang valid, tetapi dalam rentang -210866760000 ke 253402300799 , auto pengubah menyebabkan nilai ditafsirkan sebagai stempel waktu Unix. Nilai numerik lainnya berada di luar jangkauan dan menyebabkan pengembalian NULL.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Simulasikan ORDER BY di SQLite UPDATE untuk menangani batasan keunikan

  2. Tidak dapat mengikat argumen pada indeks 2 karena indeks di luar jangkauan

  3. Ketidakcocokan tipe data (kode 20) saat memasukkan

  4. Bagaimana Round() Bekerja di SQLite

  5. Bagaimana cara mengetahui pengguna ada di Database Sqlite menggunakan android?