2012-11-03 24 views
6

olan bir tabloyu güncelleştirirken grup işlevinin geçersiz kullanımı İki tablo var: o_daily_lcsgeneration ve o_daily_generation.Toplam değeri

update o_daily_generation join o_daily_lcsgeneration 
on o_daily_generation.Location =o_daily_lcsgeneration.Location 
    and o_daily_generation.Date =o_daily_lcsgeneration.Date 
set o_daily_lcsgeneration.Turbine_Generation =sum(o_daily_generation.Turbine_Generation) 

cevap

7

yerine bu deneyin:

UPDATE o_daily_generation od 
INNER JOIN 
(
    SELECT Location, SUM(Turbine_Generation) TurbineSum 
    FROM o_daily_lcsgeneration 
    GROUP BY Location 
) og ON od.Location = og.Location 
SET od.Turbine_Generation = og.TurbineSum 
+0

^eksik tablo takma adını –

+0

@MikeCauser verir - güncellendi. Teşekkürler. –

1

Ben İşte

error(1111) invalid use of Group function 

ben çalıştırıyorum kodudur:

Şu hatayı alıyorsunuz o_daily_generation güncellemeye çalışırken Yukarıdaki sorguyu yukarıdaki cevaba göre güncelledi, ancak bir sorun var.

UPDATE tmpTotal t1 
    INNER JOIN 
    (
     SELECT thirdlevel_delivery_id, MAX(baseline_id) MaxBaseLineId 
     FROM tmpTotal 
     GROUP BY release_id 
    ) t2 ON t1.release_id = t2.release_id 
    SET t1.planned_delivery_date = t2.MaxBaseLineId; 

O

Error Code : 1054 
Unknown column 't2.release_id' in 'on clause' 
+1

Birleştirme deyiminde kullanmak için 't2' adlı ifadede' release_id' sütununu seçmelisiniz. – Kobi