Saya ingin mengonversi timestamp
di MySQL ke tanggal.
Saya ingin memformat bidang user.registration ke dalam file teks sebagai yyyy-mm-dd
.
Inilah SQL saya:
$sql = requestSQL("SELECT user.email,
info.name,
FROM_UNIXTIME(user.registration),
info.news
FROM user, info
WHERE user.id = info.id ", "export members");
Saya juga mencoba konversi tanggal dengan:
DATE_FORMAT(user.registration, '%d/%m/%Y')
DATE(user.registration)
Saya mengulangi hasil sebelumnya untuk menulis file teks dan saya mendapatkan:
email1; name1; DATE_FORMAT (user.registration, '% d /% m /% Y'); news1
email2; name2; news2
Bagaimana saya bisa mengonversi bidang itu menjadi tanggal?
mysql
sql
date-formatting
remiremy
sumber
sumber
Jawaban:
sumber
users
.user_created_at
), '% Y-% b-% e') = '2015-03-06' apakah ini format yang benar atau haruskah saya memodifikasi ini?'%Y-%m-%d'
Anda akan memformatnya dalam PHP(date('Y-m-d',$row->user_created_at))
- ini (kedua varian, SQL dan PHP) muncul sebagai 2018-11-06Konversi stempel waktu ke tanggal di MYSQL
Buat tabel dengan cap waktu bilangan bulat:
Masukkan beberapa nilai
Lihatlah
Ubah nomor menjadi stempel waktu:
Konversikan ke dalam format yang dapat dibaca:
sumber
Untuk mendapatkan kencan Anda bisa
cast
melakukannyadan untuk mendapatkan penggunaan format tertentu
date_format
Demo SQLFiddle
sumber
Jika
registration
bidangnya memang tipeTIMESTAMP
Anda harus bisa hanya melakukan:dan pendaftaran harus ditampilkan sebagai tttt-bb-hh
sumber
Cukup gunakan fungsi DATE mysql:
sumber
SELECT DATE(UNIX_TIMESTAMP())
meludahNULL
di MySQL 5.7.14 sayaAnda harus mengonversi
timestamp
kedate
.FROM_UNIXTIME
sumber
Jika Anda mendapatkan kueri dalam output Anda, Anda perlu menunjukkan kepada kami kode yang benar-benar menggemakan hasilnya. Bisakah Anda memposting kode yang memanggil requeteSQL?
Misalnya, jika Anda telah menggunakan tanda kutip tunggal dalam php, itu akan mencetak nama variabel, bukan nilainya
Ini terdengar persis seperti masalah Anda dan saya yakin ini penyebabnya.
Juga, coba hapus simbol @ untuk melihat apakah itu membantu dengan memberi Anda lebih banyak informasi.
yang seperti itu
menjadi
Ini akan menghentikan penekanan kesalahan apa pun jika kueri melempar kesalahan.
sumber
Saya melakukannya dengan fungsi 'tanggal' seperti yang dijelaskan di sini :
sumber
FROM_UNIXTIME(unix_timestamp, [format])
itu yang kamu butuhkanFROM_UNIXTIME
mendapat nilai angka dan mengubahnya menjadiDATE
objek,atau jika diberi format string, ia mengembalikannya sebagai string.
Solusi yang lebih lama adalah mendapatkan objek tanggal awal dan memformatnya dengan fungsi kedua
DATE_FORMAT
... tetapi ini tidak lagi diperlukansumber
Mencoba:
Ini akan memformat stempel waktu dalam milidetik ke string yyyy-mm-dd.
sumber