私はMySQLクエリを書くのがうまくないので、このクエリは正常に動作しません。すべての「グループ」を選択し、そのグループの作成者、最後に更新する人、グループ内の画像の数など、グループに保存されているIDでグループの外部情報を取得します。INNER JOINを使用せずにテーブルを結合するにはどうすればよいですか?
このクエリでは、INNER JOINを使用していますが、このクエリではイメージが選択されていないグループは明らかです。私は、クエリーで何があってもすべてのグループを選択し、IDを使ってすべてのグループの情報を取得します。グループに画像がない場合、無視するグループではなく、画像数を0にします。
これは、現在のクエリです:
SELECT g.id, g.name, g.date_created, g.date_updated, g.created_by,
c.fullname AS creator_name, g.updated_by, u.fullname AS updater_name, COUNT(i.id) as image_count
FROM gallery_groups g INNER JOIN
users c INNER JOIN
users u INNER JOIN
gallery_images i
WHERE g.created_by=c.id AND g.updated_by=u.id AND i.group=g.id $id
GROUP BY g.name
ORDER BY g.date_updated DESC, g.name
私はINNERは、RIGHT JOINとOUTER JOINをLEFT JOINとJOINを交換しようとしているが、すべてはただ、SQLエラーになります。
ありがとうございました!
どのようなエラーが表示されていますか? – zerkms