このようなメッセージをもう 1 つ投稿しました。しかし、誰も助けませんでした。だから私はもう少し読んで、ある程度機能するこのコードを持っています:
新しいバージョンと新しい問題を編集
SELECT i.*, o.organ_name, o.organ_logo, vtable.*
FROM heroku_056eb661631f253.op_ideas i
JOIN
(SELECT
COUNT(v.agree) as agree,
COUNT(v.disagree = 1 or null) as disagree,
COUNT(v.obstain = 1 or null) as abstain
FROM op_idea_vote v
) AS vtable
LEFT JOIN op_organs o ON i.post_type = o.organs_id
op_idea_vote テーブルには 1 行しかなく、op_ideas テーブルには 3 行あります。しかし、各行に各 op_ideas 行の合計を与えています
作業ソリューションの編集
WayneC のおかげで、ここに作業コードがあります。
SELECT i.*, o.organ_name, o.organ_logo, vtable.*
FROM heroku_056eb661631f253.op_ideas i
JOIN
(SELECT v.idea_Id,
COUNT(v.agree = 1 or null) as agree,
COUNT(v.disagree = 1 or null) as disagree,
COUNT(v.obstain = 1 or null) as abstain
FROM op_idea_vote v
GROUP BY v.idea_id
) AS vtable ON vtable.idea_id = i.idea_id
LEFT JOIN op_organs o ON i.post_type = o.organs_id
WHERE idea_geo = 'International';