Проблема Codeigniter с SQL COUNT & JOIN - PullRequest
0 голосов
/ 27 февраля 2019

У меня проблема с подсчетом строк, объединенных в SQL (последняя версия).

Моя основная таблица говорит: matches.

id     match_name

1      match 1
2      match 2
3      match 3
4      match 4

У меня есть другая таблица match_entries.

id    user_id    match_id    registration_success

1     56         1          true
2     29         1          true
3     24         1          true

Мое требование - показать все совпадения и количество записей, зарегистрированных под каждым совпадением.Мой код SQL:

    $this->db->select('m.id, count(e.id) AS total_entries'); 
    $this->db->from('matches m'); 
    $this->db->join('match_entries e', "m.id=e.match_id",'LEFT'); 
    $this->db->group_by('e.match_id');
    $this->db->order_by('m.id', 'ASC');
    $query = $this->db->get(); 
    $row = $query->result();

    if (empty($row))
        return FALSE;
    return $row;

Результат я получаю

[{"id":"1","total_entries":"3"},{"id":"2","total_entries":"0"}]

Приведенный выше код работает без каких-либо ошибок.Основная проблема здесь заключается в том, что результат показывает только 2 строки из таблицы matches, вместо этого он должен показывать 4 с total_entries "0" в других строках.

Что не так с кодом?Любая помощь приветствуется!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...