2
有,爲什麼下面的UPDATE語句會產生一個錯誤更新與INNER JOIN失敗,但相關的SELECT語句的工作
UPDATE `t1`
INNER JOIN `t2` ON `t2`.`id`=`t1`.`t2_id`
INNER JOIN `t3` ON `t2`.`t3_id` = `t3`.`id` AND `t3`.`a_id` = '123'
WHERE `t2`.`date` > '2012-08-14'
AND `t2`.`status` = 'pending'
SET `t1`.`active` = '0';
原因
我得到的錯誤是:
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'WHERE `t2`.`date` > '2012-08-14' AND `t2`.`statu' at line 4
下面的(相關) SELECT語句工作好
SELECT `t1`.*
FROM `t1`
INNER JOIN `t2` ON `t2`.`id`=`t1`.`t2_id`
INNER JOIN `carer` ON `t2`.`t3_id` = `t3`.`id` AND `t3`.`a_id` = '123'
WHERE `t2`.`date` > '2012-08-14'
AND `t2`.`status` = 'pending'
啊,當然!謝謝 :) – xylar 2012-08-15 11:50:16