igor_avr
Guest
Помогите со сложным запросом
У нас есть 4 таблицы вида:
t1:
id
date
t2:
id
name
t3:
id
aid
t4:
aid
pid
date
Мне нужно сделать такой вот селект:
SELECT t1.id, t2.name, COUNT(t3.aid) as t3total, COUNT(t4.pid) as t4total, MAX(t4.date) as date
Длелал далее таким вот образом:
FROM table1 as t1
LEFT JOIN table2 as t2 ON t2.id = t1.id
LEFT JOIN table3 as t3 ON t3.id = t1.id
LEFT JOIN table4 as t4 ON t4.aid = t3.aid
GROUP BY t1.id
В итоге получилось, что число в поле t3total было не правильным. Причина вроде в том, что он плюсует ещё число полей из t4 по какому-то критерию.
Может кто поможет правильно сделать селект?
Спасибо.
У нас есть 4 таблицы вида:
t1:
id
date
t2:
id
name
t3:
id
aid
t4:
aid
pid
date
Мне нужно сделать такой вот селект:
SELECT t1.id, t2.name, COUNT(t3.aid) as t3total, COUNT(t4.pid) as t4total, MAX(t4.date) as date
Длелал далее таким вот образом:
FROM table1 as t1
LEFT JOIN table2 as t2 ON t2.id = t1.id
LEFT JOIN table3 as t3 ON t3.id = t1.id
LEFT JOIN table4 as t4 ON t4.aid = t3.aid
GROUP BY t1.id
В итоге получилось, что число в поле t3total было не правильным. Причина вроде в том, что он плюсует ещё число полей из t4 по какому-то критерию.
Может кто поможет правильно сделать селект?
Спасибо.