0

私は2つのテーブル(MySQL)を持っています:

フォーラム: match_static_id、コメント、...

一致するもの: static_id, .........

SQLステートメント:

SELECT  forum.match_static_id, count(forum.comments) 'comments_no', matches.* 
from forum 
INNER JOIN matches ON forum.match_static_id = matches.static_id   
group by forum.match_static_id

グループバイを使用しても、一致ごとに適切な数のコメントを取得できません (常にコメントの数を掛けます例 4 コメントは 8 を返します)。私のSQLは間違っていますか?あなたからの手がかりが欲しいだけですか?

4

1 に答える 1

-1

内部の代わりに左結合を使用する必要があります

SELECT forum.match_static_id, count(forum.comments) 'comments_no', matches.* from matches LEFT JOIN forum ON forum.match_static_id = matches.static_id
group by forum.match_static_id

于 2013-07-09T14:04:00.443 に答える