SQL Join and Count - PullRequest
       4

SQL Join and Count

0 голосов
/ 10 ноября 2009

Я хочу объединить две таблицы и получить данные по идентификатору из первой таблицы и подсчитать запись столбца из второй таблицы по одному идентификатору. Я хочу один запрос, который дает мне этот вывод.

Ответы [ 3 ]

4 голосов
/ 10 ноября 2009

Ниже приведен пример использования / пример вашей проблемы и предлагаемое решение: У вас есть две таблицы User и User_Friends, в которых хранятся пользовательские данные и контактная информация соответственно.

И вы хотите отобразить имя и количество контактов, которые есть у пользователя.

Table User:
id Name
0   A
1   B
2   C
3   D

Table User_Friends:
id friend_id
0    1
0    2
0    3
1    2
1    3

Output:
Name    Count(*)
A        3
B        2
C        0
D        0

//Display the Name, number of friends
SELECT Name, count(*)
FROM User, User_Friends
WHERE User.id = User_Friends.id
GROUP BY User_Friends.id
3 голосов
/ 10 ноября 2009

Я думаю вы спрашиваете о таком запросе:

select t1.id, count(t2.id)
 from table1 as t1
 left outer join table2 as t2
  on t2.table1_id = t1.id
 group by t1.id;
1 голос
/ 10 ноября 2009
select 
   ID,
   (select count(*) from table2 where ID=p.ID) as [count]
from table1 p
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...