Как посчитать количество строк в таблице, используя внешний ключ в том же запросе? - PullRequest
4 голосов
/ 20 февраля 2011

Скажем, у меня есть table1 , которое содержит поле с именем Name и поле с именем ItemID , которое является внешним ключом для table2 .

Мне нужен запрос, содержащий каждое имя, и сколько записей в таблице 2 имеют тот же ItemID, что и эта запись.

Как бы я поступил так?

1 Ответ

5 голосов
/ 21 февраля 2011
select Name, count(ItemID) as itemCount
from table1 inner join table2 on table1.ItemID = table2.id
group by Name

но мой sql-fu может быть ржавым: P

Обратите внимание, что это не даст никаких строк для Имен, где table2 не содержит совпадающих строк, поэтому itemCould всегда будет> 0

...