Как COUNT() LEFT JOINed записи с помощью построителя запросов CodeIgniterPhp

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Как COUNT() LEFT JOINed записи с помощью построителя запросов CodeIgniter

Сообщение Anonymous »

У меня такой запрос:

Код: Выделить всё

return $this->db
->select('forumCategories.id, forumCategories.name, forumCategories.order, forumCategories.date_created, COUNT(forumPosts.forumCategory_id) as postCount')
->from('forumCategories')
->join('forumPosts', 'forumCategories.id = forumPosts.forumCategory_id', 'left')
->group_by('forumPosts.forumCategory_id')
->order_by('forumCategories.order DESC')
->get()
->result_array();
Запрос берет все категории форума и подсчитывает сообщения для каждой категории. Проблема в том, что он берет только категории, в которых есть сообщения, и только одну категорию, в которой еще нет сообщений.
Пример:

Код: Выделить всё

Category 1 | 16 posts
Category 2 | 3 posts
Category 3 | 0 posts
Category 4 | 0 posts
Category 5 | 0 posts
Category 6 | 0 posts
Будут возвращены только категории 1, 2 и 3. Как мне написать этот запрос, чтобы он возвращал все категории?

Подробнее здесь: https://stackoverflow.com/questions/347 ... ry-builder
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»