Автор Тема: 2 count\'a + left join trouble!  (Прочитано 1961 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн tattered

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 1
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
2 count\'a + left join trouble!
« : 24 Декабря 2004, 11:51:17 »
есть 3 таблицы: user, table1, table2

user:
| id | name |

table1
| id | usr_id | description |

table2
| id | usr_id | description |

нужно вывести имя user\'а из таблицы user и посчитать, сколько записей он сделал в первую и вторую таблицы (нуль тоже может быть, т.к. user может записи и не делать).
использую версию mysql - 4.0.13
знаю, что с версии 4.1.5 можно использовать подселект, но это тоже не годиться.

написал следующее:
select
user.name,
count(table1.id) as cnt_tab1,
count(table2.id) as cnt_tab2
from
user
left join
table1 on user.id=table1.usr_id
left join
table2 on user.id=table2.usr_id
group by user.name

если использовать left join между двумя таблицами (user+table1 или user+table2) - все ок, но, как только добавляется третья, поля cnt_tab1 и cnt_tab2 каким-то мистическим образом начинают перемножаться между собой.

спасибо всем, кто поможет.

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28