運行此查詢後,我收到一條錯誤消息,提示無效使用組函數。我很確定它的案例陳述後,我需要一個「AS量」或「AS i.amount」,但mySQl不喜歡任何這些。有什麼建議麼?使用大小寫和總結語句更新
update INVITATION AS i
LEFT JOIN REGISTRATION AS r on i.id=r.INVITATION_id
LEFT JOIN FUNDING AS f on r.id=f.REGISTRATION_id
SET i.funding_travel_amount = SUM(case
when f.category = "Other" then sum(amount)
when f.category = "Airfare" then sum(amount)
when f.category = "Mileage" then sum(amount)
else 0 end), i.funding_travel = "Custom"
WHERE i.funding_hotel = "Prepaid"
and i.funding_travel = "None"
and i.funding_per_diem = "None"
and (f.category = "Other" OR f.category ="Airfare" OR f.category= "Mileage")
and f.id is not null;
我不明白你爲什麼要使用'CASE ... WHEN',如果你選擇只有這三個值的行。 – hjpotter92