Query Builder di CodeIgniter
Penjelasan
Selain method Model bawaan seperti find(), CodeIgniter punya Query Builder yang bisa diakses lewat $this->db->table() atau langsung dari Model — dirangkai dengan where(), orderBy(), lalu diakhiri get() untuk menjalankan query dan mengambil hasilnya.
Contoh Konsep
<?php
$produkModel = new ProdukModel();
// Ambil semua produk dengan harga di atas 50000, urutkan dari termahal
$produkMahal = $produkModel->where('harga >', 50000)
->orderBy('harga', 'DESC')
->findAll();
// Ambil satu produk pertama yang namanya mengandung "Kaos"
$produk = $produkModel->like('nama', 'Kaos')->first();
// Hitung jumlah produk yang stoknya habis
$jumlahHabis = $produkModel->where('stok', 0)->countAllResults();
Praktikum
Pakai model ArtikelModel dari materi sebelumnya. Buat query yang mengambil semua artikel yang judulnya mengandung kata "CodeIgniter" (like), diurutkan dari yang terbaru (created_at DESC).
Ketik/edit bebas di sini untuk latihan — kode ini tidak dijalankan.
Tips
Method pengambil hasil di CodeIgniter bernama findAll() (bukan get() seperti Eloquent) untuk mengambil banyak record, dan first() untuk satu record — perbedaan penamaan ini sering bikin bingung kalau kamu baru pindah antar dua framework.