我有一个问题,我找不到帮助。当我删除 ORDER BY 和 LIMIT 添加时,此查询工作正常。但是对于它们,它会导致“调用非对象上的成员函数 execute()”-错误。使用 LEFT 或 INNER JOIN 没有区别。
$sql = "UPDATE tasks JOIN service
ON tasks_account_id = service_id
SET `tasks_status` = 'prog' ,
tasks_user = '".$user."'
WHERE `tasks_status` = 'free' AND `service_besetzt` = '0'
ORDER BY `tasks_client_date` ASC, `tasks_id` ASC
LIMIT ".$limit."";
$result = $db->prepare( $sql );
$result->execute();
有人有想法吗? 谢谢!
最佳答案
问题是您正在使用多表 UPDATE 并且 ORDER BY 和 LIMIT 子句不能与它一起使用;然而,它们在单表更新时工作得很好。请参阅 http://dev.mysql.com/doc/refman/5.0/en/update.html 上的第 2 段.
关于php - MySQL:使用 ORDER BY 时,UPDATE 和 JOIN 查询出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6362544/