我正在运行此查询,并且收到 ** #1241 - 操作数应包含 1 列** 错误:
SELECT `forumCategories`.`id`, `forumCategories`.`name`, `forumCategories`.`order`, `forumCategories`.`description`, `forumCategories`.`date_created`, COUNT(forumPosts.forumCategory_id) as postCount,
(SELECT `forumPosts`.*, `forumChildPosts`.`id`, `forumChildPosts`.`forumPost_id`, COUNT(forumChildPosts.forumPost_id) as childCount FROM `forumChildPosts` LEFT JOIN `forumPosts` ON `forumPosts`.`id` = `forumChildPosts`.`forumPost_id` GROUP BY `forumPosts`.`id`) AS childCount
FROM `forumCategories`
LEFT JOIN `forumPosts` ON `forumCategories`.`id` = `forumPosts`.`forumCategory_id`
GROUP BY `forumCategories`.`id`
ORDER BY `forumCategories`.`order` DESC
我有 3 张 table :
forumCategories
forumPosts | forumPosts.forumCategory_id = forumCategories.id
forumChildPosts | forumChildPosts.forumPosts_id = forumPosts.id
我想计算论坛类别的所有帖子,并且我想计算属于该论坛类别的所有子帖子。我怎样才能做到这一点?
最佳答案
您无法使用子选择来选择多个项目,然后为它们指定一个名称。现在,您从forumPosts 获取所有内容,从forumChildPosts 等获取一些内容,并尝试将其放入单个列childCount 中。这是不允许的。
从该选择中删除所有其他结果列并仅保留 count
可能就足够了?
关于php - MySQL #1241 - 计数时操作数应包含 1 列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34899797/