現在、私のeコマースWebサイトには、以下の2つのテーブルがあります。2つのクエリを使用して生成しました
$query = $this->db->query("SELECT count(*) AS hits, product_id
FROM visitors
GROUP BY product_id");
if ($query->num_rows() > 0) {
foreach ($query->result() as $row){
$hits = $row->hits;
$product_id = $row->product_id;
$data = array(
'product_id' => $product_id ,
'hits' => $hits
);
$this->db->insert('visitor_days', $data);
}
}
問題:
10kレコードの場合、更新は非常に遅くなります。このクエリを改善する方法は?単一のクエリで作成できますか?
訪問者
- ID product_id date
- 534024 69082 2012-09-25
- 534025 69082 2012-09-25
- 534026 69082 2012-09-25
- 534027 69082 2012-09-25
- 534028 53042 2012-09-25
- 534029 53042 2012-09-25
visitor_days
- ID product_id hits
- 534024 69082 4
- 534025 53042 2