Kadang kala kita menginginkan mengambil data berdasarkan range tanggal tapi dari data datetime di codeigniter. Sebagai contoh kita akan menginginkan mengambil data transaksi dari tanggal 1 November 2021 sampai tanggal 30 Novemver 2021 tetapi data pada tabel berupa datetime dengan format Y-m-d H:i:s (2021-11-01 00:00:00).
Querynya cukup mudah hanya dengan menambahkan DATE pada nama field yang akan kita cari pada model di codeigniter. Contohnya sebagai berikut:
1 2 3 4 5 6 7 8 9 |
public function get_data($tgl_awal = null, $tgl_akhir = null) { $this->db->select('*'); $this->db->from('nama_tabel'); $this->db->where('DATE(field type datetime) >=', $tgl_awal); $this->db->where('DATE(field type datetime) <=', $tgl_akhir); return $this->db->get()->result(); } |
Nah, mudah kan. Hal yang sama dapat kita lakukan jika kita akan mengambil data berdasarkan bulan atau tahun. Tinggal kita ubah saja DATE menjadi MONTH atau YEAR, maka otomatis pencarian datanya akan mengambil nilai bulan atau tahun dari data datetime yang ada.
Semoga bermanfaat.