2016-09-24 4 views

答えて

0

あなたのクエリは次のようになります。

SELECT b.date, count(c.id) as Total 
FROM blog b LEFT JOIN 
    comment c 
    ON c.id = b.id 
GROUP BY b.date DESC; 

これは、(あなたの現在のクエリが動作している場合場合であるべきである)dateblogから来ていることを前提としています。違いは、の2番目のテーブルではなく、の最初のではないことです。

これは、blogの列には*を使用しません。これは通常、GROUP BYを使用するときわめて悪い考えです。ほぼすべてのSQLエンジンによって実施されるベストプラクティスは、にあるときに、SELECTに集約されていない列のみを含めることです。

注:非常に異なる2つのエンティティ(ブログやコメント)の間に同じ列idが使用されていることは非常に厄介なようです。JOIN

0

私はcount(blog.id)からcount(comment.id)に変更します

関連する問題