Study
Echo

GORM: Query

Penjelasan

GORM memakai method chaining untuk query, mirip query builder framework lain: db.Where(), db.Order(), diakhiri Find() (ambil banyak, hasil ke slice) atau First() (ambil satu). Hasil query dan error-nya diambil lewat pointer/variabel yang dilewatkan sebagai argumen.

Contoh Konsep

var produkMahal []Produk
db.Where("harga > ?", 50000).Order("harga desc").Find(&produkMahal)

var produk Produk
db.Where("nama LIKE ?", "%Kaos%").First(&produk)

var jumlahHabis int64
db.Model(&Produk{}).Where("stok = ?", 0).Count(&jumlahHabis)

Praktikum

Tulis query GORM yang mengambil semua Artikel yang Judul-nya mengandung kata "Echo" (LIKE), diurutkan dari yang terbaru (Order("created_at desc")), hasilnya ditampung ke slice []Artikel.

Editor Latihan

Ketik/edit bebas di sini untuk latihan — kode ini tidak dijalankan.

Tips

GORM SELALU memakai placeholder ? untuk nilai di klausa Where (mis. "harga > ?", 50000), BUKAN string concatenation langsung — ini mencegah SQL injection secara otomatis, sama prinsipnya dengan prepared statement di database/sql standar Go.