Есть таблица:
ID City
1 Toronto
2 Toronto
3 Toronto
4 Toronto
5 NY
6 NY
Как получить следующую таблицу:
City Total
NULL 6
Toronto 4
NY 2
Я планирую использовать union
:
(select city, count(*) as total from tbl group by city)
union
(select null, count(*) as total from tbl)
Можно ли использовать что-то вроде повторного использования подзапроса:
(select city, count(*) as total from tbl group by city) tmp
union
(select null, count(*) as tmp from tbl)
Или sql уже оптимизирует
(select city, count(*) as total from tbl group by city)
union
(select null, count(*) as total from tbl)
?