Codeigniter活动记录查询

时间:2015-12-06 04:39:56

标签: sql codeigniter activerecord

如何将此过程查询编写为codeigniter活动记录查询(update_batch模式)

  UPDATE products SET current_stock = current_stock + 1 where product_id = 1

2 个答案:

答案 0 :(得分:2)

您可以像这样使用update_batch:

$products = $this->db->get('products'))->result(); 
for( $i = 0; $i < count($products); $i++){
$data[] = array(
                   'product_id' => $product[$i]->product_id,
                   'current_stock' => $product[$i]->current_stock + 1
               );
}
$this->db->update_batch('products', $data, 'product_id');

答案 1 :(得分:0)

您可以按Codeigniter Query Builder Class上的说明使用以下查询:

$this->db->set('current_stock', 'current_stock+1', FALSE);
$this->db->where('product_id', 2);
$result = $this->db->update('products');