2012-09-17 37 views
0
INSERT INTO 
Terminal_Plataforma_Aprox (IDVersion, IDPlataforma, ParquePorcentual, ParqueActual, PorcentajeActual, Fecha) 
SELECT A.IDVersion, A.Plataforma, (SUM(A.Parque)/217958.260), SUM(A.Parque) AS SUMA, SUM(A.Porcentaje) AS PORCENTAJE, NOW() FROM 
Terminales_Parque_Porcentual A GROUP BY A.Plataforma, A.IDVersion 
ON DUPLICATE KEY UPDATE ParqueActual = A.SUMA, PorcentajeActual=A.PORCENTAJE 

我需要在此之前更新值ParqueActualPorcentajeActual與選擇值:SUM(A.Parque) AS SUMA -SUM(A.Porcentaje) AS PORCENTAJE如何使用select中的數據更新「on key key」值?

我一直有錯誤,也許我不能用其他的方式做。

回答

0

嘗試使用VALUES(),對於更換您的下面一行:

ON DUPLICATE KEY UPDATE ParqueActual = A.SUMA, PorcentajeActual=A.PORCENTAJE 

這一個:

ON DUPLICATE KEY UPDATE ParqueActual = VALUES(SUM(Parque)), PorcentajeActual=VALUES(PORCENTAJE) 

應該這樣做。

+0

我改變它,但我得到這個錯誤: '#1054 - 未知列 'SUMA' 在「字段list'' :: MySQL版本:: '版本德爾servidor:5.5.16' – user1676927

+0

我已經更新我的答案,試試。 – Nelson

相關問題