2012-06-01 3 views
0

가입 할 수 있습니다. 나는 (내부 내가 가정 조인을 사용) 첫 번째 테이블에서 이름과 성 드라이버를 추가해야카운트, 나는 두 개의 테이블이

Select Driver_ID, COUNT (Participant.Driver_ID)as 'Number of accidents' 
from Participant in car accident 
where responsibility='YES' 
group by Driver_ID 
order by COUNT (Participant.Driver_ID) desc 

그러나 :이했다. 집계 함수 나 GROUP BY 절에 포함되어 있지 않기 때문에 어떻게해야할지 모르겠다. 도와주세요 :)

답변

1

의심스러운 것이 있으므로 내부 조인을 사용해야합니다. 이름과 성이 이제 SELECT의 일부이기 때문에 GROUP BY에 해당 열을 포함시켜야합니다.

Select Driver_ID, First_name, Last_name COUNT (Participant.Driver_ID) as "Number of accidents" 
from "Participant in car accident" join Driver on "Participant in car accident".Driver_ID = Driver.Driver_ID 
where responsibility='YES' 
group by Driver_ID, First_name, Last_name 
order by COUNT (Participant.Driver_ID) desc 

이 숙제가 있습니까?

+0

대단히 감사합니다. 정상적으로 작동합니다. 그리고 숙제가 아니라 단순한 데이터베이스를 만들어 내 일을 더 쉽게하려고 노력하고 있습니다.이 분야의 초보자이기 때문에 누구나이 바보 같은 질문을 기대할 수 있습니다 :) – Urosh

0

당신은 인라인 테이블을 사용할 수 있습니다

SELECT d.driver_first_name, 
     d.driver_last_name, 
     r.incident_count 
FROM DRIVER d 
INNER JOIN (SELECT driver_id, 
        count(*) incident_count 
      FROM PARTICIPANT_IN_CAR_ACCIDENT 
      WHERE responsibility = 'YES' 
      GROUP BY driver_id) r 
    ON d.driver_id = r.driver_id 
ORDER BY r.incident_count DESC 

작동합니다.

+0

대단히 고맙습니다! – Urosh

관련 문제