|
|
|
Посчитать количество объявлений для родительской категории
|
|||
|---|---|---|---|
|
#18+
Здравствуйте. Есть доска объявлений. Есть 2 таблицы, таблица категорий, имеет следующий вид И есть таблица объявлений Нужно с помощью одного select-запроса выбрать 1) все имеющиеся категории 2) количество объявлений в каждой категории 3) общее количество объявлений в родительской категории Смотрите на скриншоты, есть объявление с id=3, оно принадлежит категории category_id=8. Категория id=8 это Автомобили, значит в этой категории одно объявление (2 условие из моей задачи). В свою очередь у категории Автомобили, есть родитель parent_id=7, это категория Авто и у неё нужно посчитать общее количество всех объявлений во всех её дочерних категориях (3 условие из моей задачи). В данном примере - одно. Что я уже сделал SELECT c.name, count(b.id) FROM `category` as c LEFT JOIN `board` as b ON c.id=b.category_id LEFT JOIN `category` as p ON p.id=c.parent_id GROUP BY c.name где category - таблица категорий board - таблица объявлений Я получаю такой результат В котором выполняются первые мои 2 условия. Нехватает 3-его, на скриншоте видно, что в "Авто" 0 объявлений, а должно быть 1, поскольку в его дочерней категории Автомобили имеется 1 объявление. Можно либо в этот же столбец посчитать (если такое возможно) или отдельным столбцом, сколько всего в родительской категории объявлений. Прощу помощи у знающих. Спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.03.2014, 00:27:13 |
|
||
|
|

start [/forum/topic.php?fid=47&fpage=185&tid=1835129]: |
0ms |
get settings: |
7ms |
get forum list: |
17ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
35ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
38ms |
get tp. blocked users: |
1ms |
| others: | 204ms |
| total: | 318ms |

| 0 / 0 |
