2017-07-14 61 views
0

我想在CodeIgniter模型上进行查询,但是当我使用更新进行多连接时,它不起作用。我有更多的表加入,我无法继续使用这3个表。多重连接和更新codeigniter sql

$emp_datas = array(
    'status' => 'test', 
    'ticket_type' => 'SB', 
); 


$this->db->join('ticket_requests_type', 'ticket_requests_type.ticket_type_number = ticket_requests.ticket_type')  
->join('employee', 'employee.empe_id = ticket_requests.employee_involved') 

->set($emp_datas) 
->where('ticket_number', $ticket_no) 
->update('ticket_requests_type','ticket_requests'); 
+0

据我知道的Active Record不支持这个呢。你必须建立一个自定义的纯SQL查询或使用一个丑陋的解决方法,如下所示:https://stackoverflow.com/questions/9578253/codeigniter-active-record-update-statement-with-a-join – CodeBrauer

+0

@vincent villafuerte请[访问此处](https://stackoverflow.com/questions/9333392/sql-join-in-codeigniter-with-active-record?rq=1)我想你在这里得到了你的答案 –

回答

0

要清楚......该UPDATE条款可以参照FROM子句中指定的表的别名。

我在这里给一个通用示例:

UPDATE A 
SET foo = B.bar 
FROM TableA A 
JOIN TableB B 
    ON A.col1 = B.colx 
WHERE ...