Я пытаюсь подсчитать количество записей в соединении таблицы, где флаг для столбца в таблице - «A», «B» или «C».Мне также нужно, чтобы это возвращало счетчик 0, когда строк не существует (поэтому мне нужно, чтобы A, B и C возвращались каждый раз с их относительными счетами).
Мой запрос
Select t1.Num, t2.Flag, count(*)
from t1, t2
where t1.id = t2.id
and t2.flag in ('A','B','C')
group by t1.Num, t2.flag
Это, конечно, будет только возвращать нижеприведенное, так как нет никаких записей для 'C'
Num Flag Count
1 A 3
1 B 2
Можно ли как-нибудь вернуть 0 для C, как показано ниже?
Num Flag Count
1 A 3
1 B 2
0 C 0