0

mysqlクエリに問題があります。

私はこれらのテーブルを持っています:アップロード、ユーザー、評価。

次のクエリを使用して最新の投稿を取得しています:

Select All
              upload.*,
              Count(ratings.id) As totalrates,
              Avg(ratings.rating) As avgrating,
              users.nickname
            From upload
              Inner Join ratings
                On ratings.upload_id1 = upload.id
              Inner Join users
                On upload.users_id = users.id
            Group By upload.id DESC

ただし、投稿にまだ評価がない場合は表示されないため、:pに投票することはできません。

any1は、このクエリを調整する方法、またはこれを解決する方法に関する他の良い提案を知っていますか?

どうもありがとう!

4

1 に答える 1

1
Select All
              upload.*,
              Count(ifnull(ratings.id,0)) As totalrates,
              Avg(ifnull(ratings.rating,0)) As avgrating,
              users.nickname
            From
              upload Inner Join
              users On upload.users_id = users.id left join
              ratings On ratings.upload_id1 = upload.id
            Group By
              upload.id DESC

2 つの変更

  1. Left Join を使用して、評価をユーザーとアップロードに結合します
  2. 評価が見つからない場合、デフォルトは 0 です。
于 2013-01-13T17:21:17.293 に答える