我有兩張表;其中包含了產品的統計數據,另一個包含附加統計MySQL加入sum()
StatsHourly:
id
product_id (can be multiple)
amount
cost
time
StatsValues:
id
product_id (can be multiple)
value (double)
我需要加入這兩個表,得到這樣的結果:
product_id
sum (amount)
sum (cost)
sum (value)
我正在嘗試這樣做:
"SELECT
SUM(s.amount) as amount,
SUM(s.cost) as cost
FROM StatsHourly s
LEFT JOIN (
SELECT
COALESCE(SUM(value), 0) as value
FROM StatsValues
GROUP BY product_id
) value v ON v.product_id = s.product_id
WHERE 1
AND s.product_id = :product_id";
這不起作用。有人能告訴我正確的做法嗎?
你能描述多一點什麼「不工作」的意思,正是? – Castaglia
它只是告訴我,我有mySQL錯誤,我看不到一個;對於我來說這個查詢有點太過分了,老實說 –
SUM(s.cost)作爲成本, - 因爲成本是正確的,逗號是錯誤的SUM(s.cost)。最後一個字段後面沒有逗號 –