Saya punya tabel PostgreSQL Prices
,, dengan kolom:
price
(Desimal)product_id
(Int)
Ada juga created_at
dan updated_at
kolom.
Harga diperbarui secara berkala dan saya menjaga harga lama di atas meja. Untuk produk tertentu, harga terakhir dalam tabel adalah harga saat ini.
Apa cara paling efisien untuk mendapatkan harga terakhir untuk produk tertentu:
- Indeks
product_id
dan permintaan untuk catatan terakhir - Tambahkan kolom ketiga
active
(Boolean) untuk menandai harga terbaru dan buat indeks komposit (product_id
danactive
) - Atau sesuatu yang lain?
where active
mungkin akan membantu lebih banyak untuk mengambil produk terbaru.