Bagaimana cara mengonversi 1300464000
ke 2011-03-18 16:00:00
dalam MySQL?
Bagaimana cara mengonversi 1300464000
ke 2011-03-18 16:00:00
dalam MySQL?
Jawaban:
Gunakan FROM_UNIXTIME()
fungsi di MySQL
Ingat bahwa jika Anda menggunakan kerangka kerja yang menyimpannya dalam milidetik (misalnya cap waktu Java) Anda harus membaginya dengan 1000 untuk mendapatkan waktu Unix yang tepat dalam hitungan detik.
SELECT from_unixtime( TIMESTAMP( "2011-12-01", "22:01:23.048" ) )
tidak bekerja Mengapa? menggunakan v5.6
SELECT from_unixtime( unix_timestamp(TIMESTAMP( "2011-12-01", "22:01:23.048" ) ) )
bekerja. TIMESTAMP()
tidak mengembalikan nilai integer.
DATE_FORMAT(FROM_UNIXTIME(`orderdate`), '%Y-%m-%d %H:%i:%s') as "Date" FROM `orders`
Ini adalah solusi akhir jika tanggal yang diberikan dalam format seperti 1300464000
DATE_FORMAT(FROM_UNIXTIME(`orderdate`), '%d-%m-%Y %H:%i:%s') as "Date" FROM `orders`
orderdate
), '% Y-% m-% d') sebagai "Tanggal" FROM orders
akan menjadi solusi akhir: D
Untuk menjawab komentar Janus Troelsen
Gunakan UNIX_TIMESTAMP sebagai ganti TIMESTAMP
SELECT from_unixtime( UNIX_TIMESTAMP( "2011-12-01 22:01:23.048" ) )
Fungsi TIMESTAMP mengembalikan Tanggal atau DateTime dan bukan cap waktu, sedangkan UNIX_TIMESTAMP mengembalikan cap waktu unix
Kamu bisa memakai
select from_unixtime(1300464000,"%Y-%m-%d %h %i %s") from table;
Untuk deskripsi detail tentang