2009-11-10 6 views
0

두 테이블을 조인하고 첫 번째 테이블의 ID에 대한 데이터를 가져오고 같은 ID에 대해 두 번째 테이블의 열 레코드를 계산하려고합니다. 나에게 그 결과를 제공하는 하나의 질의가 필요하다.SQL Join and Count

+1

여기에 질문 할 때 더 많은 노력을 기울여주십시오. 예제 코드. 자세한 내용은. 철자. 문법. – bguiz

+1

원하는 테이블과 출력에 날짜의 예를 들려 줄 수 있습니까? – beggs

+0

그리고 그것을 이해할 수있는 이름을주세요. – phunehehe

답변

3

난 당신이 같은 쿼리에 대해 요구하고 생각 :

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
select 
    ID, 
    (select count(*) from table2 where ID=p.ID) as [count] 
from table1 p 
4

이 다음은 문제와 제안 된 솔루션에 대한 사용 사례/예입니다 당신은 두 테이블의 사용자가 사용자 데이터 및 연락 정보를 각각 저장하는 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