Сколько B и C имеет A?

У меня есть эти таблицы:

A:
id
1
2

B:
id a_id
1  1
2  1
3  1

C:
id a_id
1  1
2  1
3  2

Мне нужен этот результат:

A, CountB, CountC
1,      3,      2
2,      0,      1

Эта попытка не работает нормально:

SELECT 
    A.id, COUNT(B.id), COUNT(C.id)
FROM
    A
        LEFT JOIN
    B ON A.id = B.a_id
        LEFT JOIN
    C ON A.id = C.a_id
GROUP BY A.id

Каким должно быть предложение sql без использования коррелятивных запросов?

6
задан TestDevelopment Development 9 August 2012 в 19:44
поделиться