我不擅长编写MySQL查询,所以这个查询不能正常工作。我想选择所有的“组”,并通过组中保存的ID获取组的外部信息,例如组的创建者,最后一个更新人员以及组中的图像数量。如何在不使用INNER JOIN的情况下连接表?
在此查询我使用INNER JOIN,但显然组有没有图像在此查询的arent选择。我希望查询能够选择所有组,并使用这些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与LEFT JOIN连接,右JOIN和OUTER JOIN,但都只是导致SQL错误。
感谢您的帮助!
有什么错误? – zerkms 2011-01-20 05:56:03