當我運行此查詢時,投票sum
是它應該是(總和= 6而不是3)的2倍。有人可以找出解決這個問題嗎?SQL查詢總和乘以2倍應該是
SELECT sum(votes.vote) AS sum
, my_votes.vote IS NOT NULL AS did_i_vote
, votes.parent_id, subject
, review_date
, item_id
, review_summary
, review, full_name
, reputation
, profile_picture
, accounts.acct_id
FROM votes
RIGHT JOIN items_purchased
on votes.parent_id=items_purchased.purchase_id
JOIN accounts
ON items_purchased.purchaser_account_id=accounts.acct_id
JOIN items
on items_purchased.item_id=items.folder_id
LEFT JOIN votes AS my_votes
ON my_votes.parent_id=items_purchased.purchase_id
AND my_votes.acct_id='3'
AND my_votes.column_name='purchase_id'
WHERE purchase_id='2'
AND deleted_p!=1 and pub_priv_p!=1
GROUP BY items_purchased.purchase_id
我敢肯定它做的JOIN的,因爲如果我擺脫JOIN items on items_purchased.item_id=items.folder_id
然後總和= 3。但是,我需要在那裏加入。
想法?
請張貼一些示例輸入/輸出。 –
你可以用'count()'代替'sum()'嗎? –
count()和sum()都給sum = 6 –