Hãy thử như thế này:
$data = array('current_login' => date('Y-m-d H:i:s'));
$this->db->set('last_login', 'current_login', false);
$this->db->where('id', 'some_id');
$this->db->update('login_table', $data);
Đặc biệt chú ý đến set()
tham số thứ 3 của cuộc gọi. false
ngăn CodeIgniter trích dẫn tham số thứ 2 - điều này cho phép giá trị được coi là một cột bảng chứ không phải một giá trị chuỗi. Đối với bất kỳ dữ liệu nào không cần xử lý đặc biệt, bạn có thể gộp tất cả các khai báo đó vào $data
mảng.
Truy vấn được tạo bởi mã trên:
UPDATE `login_table`
SET last_login = current_login, `current_login` = '2018-01-18 15:24:13'
WHERE `id` = 'some_id'