Mengubah format date timestamp didalam query?

Saya mempunyai sebuah tabel yang salah satu kolom nya berisi nilai timestamp yang direcord melalui trigger tiap kali ada data yang di create

image.png

yang jadi permasalahan saya adalah bagaimana cara mengubah format tanggal timestamp tersebut didalam query dibawah

$sql = mysql_query("SELECT a.*, b.nm_kecamatan AS nm_kecamatan, c.nm_sekolah AS nm_sekolah

			FROM keadaan_siswa a

			JOIN kecamatan b ON a.id_kecamatan = b.id_kecamatan

			JOIN sekolah c ON a.id_sekolah = c.id_sekolah

			WHERE a.id_sekolah = '$_POST[nm_sekolah]' AND tanggal_data BETWEEN '$tgl1' AND '$tgl2'

			ORDER BY id_kecamatan ASC");

timestap tersebut ditampung dengan nama kolom tanggal_data.

Agar format yang sebelumnya 2021-11-12 14:43:03 menjadi 12/11/2021 (d/m/Y) tanpa harus saya ubah triggernya, dikarenakan sudah banyak data yang masuk tidak mungkin 1 per 1 row ditablenya saya ubah lagi nilai tanggalnya.

maksud saya mengubah nilai tanggalnya adalah saat dipanggil dicodingan php nya agar matching dengan nilai $tgl1 dan $tgl2 pada query diatas yang mana ke 2 variabel tersebut sudah bernilai tanggal dengan berformat (d/m/Y). Ini bukan untuk mengubah nilai didalam kolom tabel database nya.

mohon bantuannya gan?

avatar barkah03
@barkah03

33 Kontribusi 9 Poin

Diperbarui 2 tahun yang lalu

2 Jawaban:

Jawaban Terpilih

<div>Hallo bantu jawab ya,<br>Saya biasa buat function seperti ini untuk konversi tanggal dari format YYYY-MM-DD menjadi DD-MM-YYYY ataupun sebaliknya :<br><br></div><pre>function reverseDate($date) { $arrDate = explode("-", $date); $arrDate = array_reverse($arrDate); return implode("-", $arrDate); }</pre><div><br>Sehingga jika diterapkan pada query, maka kodenya menjadi seperti ini :<br><br></div><pre>$tgl1 = "01-12-2021"; $tgl2 = "31-12-2021"; <br>$tgl1Reversed = reverseDate($tgl1); //menjadi -&gt; 2021-12-01 $tgl2Reversed = reverseDate($tgl2); //menjadi -&gt; 2021-12-31

$sql = mysql_query("SELECT a.*, b.nm_kecamatan AS nm_kecamatan, c.nm_sekolah AS nm_sekolah FROM keadaan_siswa a JOIN kecamatan b ON a.id_kecamatan = b.id_kecamatan JOIN sekolah c ON a.id_sekolah = c.id_sekolah WHERE a.id_sekolah = '$_POST[nm_sekolah]' AND DATE(tanggal_data) BETWEEN '$tgl1Reversed' AND '$tgl2Reversed' ORDER BY id_kecamatan ASC");</pre><div><br>Silahkan cek hasil fungsi reverseDate -nya disini <a href="http://sandbox.onlinephpfunctions.com/code/462c31dbf8f88e1a1000917fa54c10e8af229c93">http://sandbox.onlinephpfunctions.com/code/462c31dbf8f88e1a1000917fa54c10e8af229c93</a><br>Semoga berhasil.</div>

avatar ahanafi
@ahanafi

815 Kontribusi 554 Poin

Dipost 2 tahun yang lalu

<div>Versi simpel</div><pre>$tgl1 = "01-12-2021"; $newTgl1= date("Y-m-d", strtotime($tgl1));</pre><div><br></div>

avatar Nandar
@Nandar

648 Kontribusi 204 Poin

Dipost 2 tahun yang lalu

Login untuk ikut Jawaban