我們有一個表(調查),它有不同的調查問題。每個survey_id在此表中只出現一次。Mysql查詢不求和多條記錄,只取第一條記錄
我們有一張投票表(vote_survey_table),它記錄每個調查問題的用戶投票。該表的字段爲survey_id,vote_yes,vote_no,user_id等。此表對於每個survey_id都有多個條目。
我想要查詢投票表來合計一個給定的調查問題的所有投票,但查詢我只提出行int他投票表的第一個實例。
SELECT survey.survey_id, vote_survey_table.vote_yes AS cnt,
survey.survey_name, survey.survey_details
FROM survey
LEFT JOIN vote_survey_table AS votedb ON vote_survey_table.vote_survey_id = survey.survey_id
GROUP BY survey.survey_id
ORDER BY cnt DESC, survey.survey_id LIMIT 0,5
我在這個查詢中缺少什麼,應該告訴查詢在投票表中添加survey_id的所有實例並總結結果?我試着將LEFT JOIN改爲INNER JOIN,但是這也沒有辦法。
一如既往地提前致謝。
一件事,你不使用'SUM'或'COUNT'任何地方。那麼你如何期待聚合發生? – RedFilter 2012-07-18 20:45:33
分組不自動加起來。使用計數(是) – Alfabravo 2012-07-18 20:45:58
字段是'vote_yes'和'vote_not'布爾字段嗎? – 2012-07-18 21:00:36