Это образец того, что похожа на таблицу моих компаний < /code>: < /p>
Код: Выделить всё
company_id | company_name | logo | ....
-----------+------------------+-----------+--------
5 | Co 5 | 123.jpg | ....
6 | Company 6 | 123.jpg | ....
7 | 7's a company | 234.jpg | ....
8 | EightCo | 345.jpg | ....
< /code>
Это образец того, как выглядит моя категории < /code> таблица: < /p>
category_id | category_name
------------+-----------
1 | Blue
2 | Red
3 | Green
4 | Yellow
< /code>
и что My Companies_categories < /code> выглядит: < /p>
company_id | category_id
-----------+-----------
5 | 2
5 | 3
6 | 1
6 | 2
7 | 1
< /code>
Примечание: company_id, и Category_id имеют иностранные ключи в своих относительных таблицах < /p>
То, что я пытаюсь сделать, - это перечислять все компании с определенной категорией. Например, если категория 2 выбрана компании 5 и 6, должны быть возвращены. Если выбрана категория 4, ничего не должно отображаться. Компания 8 никогда не должна отображаться (потому что она не связана с категориями) < /p>
Я попытался решить эту проблему, используя функцию codeigniter office () в активной записи: < /p>
$this->db->from('company_categories')
->distinct()
->where('category_id', $category_id)
->join('companies', 'companies.company_id = company_categories.company_id')
->select('companies.company_id as co_id companies.logo as co_logo, companies.name as co_name')
->get()->result();
Подробнее здесь: https://stackoverflow.com/questions/148 ... s-in-anoth
Мобильная версия