使用子查询进行更新并不起作用

时间:2017-04-21 07:48:22

标签: mysql sql

我希望让我的SQL查询计算总和并将新数据更新到我的列中,但是当我尝试查询时会显示以下错误:

  

错误#1093 - 您无法指定目标表' Pflanzen2017'用于FROM子句中的更新

这是我的疑问:

UPDATE Pflanzen2017 SET Ernteanteil = (SELECT Anzahl / (SELECT SUM(Anzahl) FROM Pflanzen2017))

有人能帮帮我吗? 谢谢!

1 个答案:

答案 0 :(得分:1)

编辑如下:

update pflanzen2017, 
(select sum(anzahl) as sumanzahl from pflanzen2017) as toupdate
set pflanzen2017.ernteanteil = pflanzen2017.anzahl/toupdate.sumanzahl;

您可以看到此here的工作版本示例。 我创建了一个非常简单的Pflanzen表,只有这里需要的两列用于更新。