使用多个表更新查询并不起作用

时间:2018-03-14 19:48:14

标签: mysql phpmyadmin

我试图用另一个表中的数据更新MySQL中的表。

UPDATE KassaticketRegels
SET soort = (SELECT t3.benaming 
         FROM KassaticketRegels AS t1 INNER JOIN Diensten AS t2 ON t1.dienst = t2.id INNER JOIN DienstGroepen AS t3 ON t2.dienstGroep = t3.id
        WHERE t1.id = KassaticketRegels.id)

当我模拟查询时,它给了我304个匹配的行。

但是当我按下去时,我得到错误"#1093 - 表' KassaticketRegels'被指定两次,两者都作为'更新'的目标。并作为数据的单独来源"。

我该如何解决这个问题?

1 个答案:

答案 0 :(得分:1)

查看代码似乎需要内部联接的更新

UPDATE KassaticketRegels t1
INNER JOIN Diensten AS t2 ON t1.dienst = t2.id 
INNER JOIN DienstGroepen AS t3 ON t2.dienstGroep = t3.id
set t1.soort = t3.benaming