например, у меня есть одна таблица о сумме денег, и сумма может увеличиваться или уменьшаться.
таблица currency_unit:
id = 1
name = dollar
amount = 1000
сумма обновления:
$change = 5000;
для обновления таблицы мне нужно написать два запроса: первый получить данные из таблицы, а второй обновить новыми данными.
я использую класс построителя запросов
контроллер:
$base = $this->base_model->get_data('currency_unit' , 'amount' , array('id'=> 1));
$data['amount'] = $base->amount + $change; // 1000 + 5000 = 6000
$this->base_model->update_data('currency_unit' , $data , array('id'=> 1));
модель:
function get_data($table , $select , $where){
$this->db->select($select);
$this->db->where($where);
$result = $this->db->get($table);
return $result->row();
}
function update_data($table , $data , $where){
$this->db->where($where);
$this->db->update($table , $data);
}
Есть ли способ обновить сумму одним запросом, а не двумя?