Sebagaimana dinyatakan dalam Literal Tanggal dan Waktu :
MySQL mengenali
DATETIME
danTIMESTAMP
nilai dalam format berikut:
Sebagai string dalam
'YYYY-MM-DD HH:MM:SS'
atau'YY-MM-DD HH:MM:SS'
format. Sintaks "santai" juga diizinkan di sini:Karakter tanda baca apa pun dapat digunakan sebagai pembatas antara bagian tanggal atau bagian waktu. Misalnya,'2012-12-31 11:30:45'
,'2012^12^31 11+30+45'
,'2012/12/31 11*30*45'
, dan'[email protected]@31 11^30^45'
setara.Sebagai string tanpa pembatas di
'YYYYMMDDHHMMSS'
atau'YYMMDDHHMMSS'
format, asalkan string masuk akal sebagai tanggal. Misalnya,'20070523091528'
dan'070523091528'
ditafsirkan sebagai'2007-05-23 09:15:28'
, tapi'071122129015'
ilegal (memiliki bagian menit yang tidak masuk akal) dan menjadi'0000-00-00 00:00:00'
.Sebagai angka dalam
YYYYMMDDHHMMSS
atauYYMMDDHHMMSS
format, asalkan nomor tersebut masuk akal sebagai tanggal. Misalnya,19830905132800
dan830905132800
ditafsirkan sebagai'1983-09-05 13:28:00'
.
DATETIME
atauTIMESTAMP
nilai dapat menyertakan bagian detik pecahan dalam hingga mikrodetik (6 digit) presisi. Meskipun bagian pecahan ini dikenali, ia dibuang dari nilai yang disimpan keDATETIME
atauTIMESTAMP
kolom. Untuk informasi tentang dukungan pecahan detik di MySQL, lihat Bagian 11.3.6, “Fractional Detik dalam Nilai Waktu” .
Literal tanggal '2012-08-24T17:29:11.683Z'
tidak cocok dengan salah satu format ini; menyarankan Anda juga—
-
gunakan sebagai gantinya objek Tanggal Node.js
toLocaleFormat()
metode (pastikan bahwa zona waktu koneksi MySQL cocok dengan lokal Node.js):if s instanceof Date return s.toLocaleFormat("%Y-%m-%d %H:%M:%S")
-
gunakan objek Tanggal Node.js
valueOf()
metode untuk mendapatkan nilai waktu dalam milidetik sejak zaman UNIX, bagi dengan1000
(untuk mendapatkan detik sejak zaman UNIX) dan melewatiFROM_UNIXTIME()
fungsi.