2013-02-18 2 views
0

У меня есть этот запрос, MySqlГруппировка с пределом для 2 таблиц

 select * from {$this->table} sc 
     join db_sc_profile scp 
     on scp.subcategory_id = sc.subcategory_id 
     join db_profile p 
     on p.profile_id = scp.profile_id 
     where sc.subcategory_id in (" . implode(',', $subcategories) . ") 
     and p.profile_id in (" .implode(',', $profiles) . 
     group by p.profile limit #### 

этот запрос не работает с этой линией group by p.profile limit ####. Итак Я хочу сгруппировать по p.profile, но ограничение на 12/count(profiles).

Могу ли я это сделать? пожалуйста, любую помощь.

NB: Я использую CodeIgniter 2

+0

1: Пробовали ли вы его? 2: У вас синтаксическая ошибка во второй-последней строке (вы не открываете двойные кавычки после конкатенации implode). –

+0

Дайте нам образец ввода и ожидаемый результат. – Achrome

+0

Да, я знаю, что это работа, я изменил ее, чтобы показать вам, как добавить группу и ограничить ее. я могу объяснить: я хочу, например, 6 подкатегорий по профилю –

ответ

0

Пример ввода

[subcategories] = Array 
(
[0] => 101 
[1] => 102 
[2] => 103 

) 

[profiles] => Array 
    (
     [0] => 5 
     [1] => 6 
    ) 

они две таблицы в базе данных связаны с третьей таблицей

profile = [profile_id, profile_name] 

subcategory = [sc_id, sc_name,...] 

profile_subcategory = [profile_id, sc_id] 
Смежные вопросы