PostgreSQL 버전 gcc (우분투/Linaro 4.7.2-22ubuntu5)에 의해 컴파일 된 x86_64-unknown-linux-gnu의 PostgreSQL 9.1.9) 4.7.2, 64 비트, 내 질문에 두 테이블을 조인하고있다, 그것은 TEMP1 및 TEMP2로, 여기 내가이 두 테이블을 가입해야 이름을 보자하나의 테이블에서 그룹을 선택하고 다른 테이블을 선택할 때 PostgreSQL이 받아들이지 않는 이유
테이블 구조는
marks_map
marks int
stud_id int
student
stud_id int
class_id int
여기 내 쿼리입니다
select class_id,stud_id,count(marks)
from student as s
inner join marks_map as m on (s.stud_id=m.stud_id) group by stud_id
여기에
내가
ERROR: column "s.class_id" must appear in the GROUP BY clause or be used in an aggregate function
같은 오류가 왜이 오류가 발생할 않는거야? 을 group by
에 사용하면 성공적으로 실행됩니다.
Group By 작동 방식 : class_id로 그룹화하지 않은 경우 원하는 여러 class_id 값 중 어떤 것을 알 수 있습니까? – IMSoP
안녕하세요, 내 실제 쿼리에서 3 개 이상의 테이블에 가입해야하는데이 쿼리는 이와 같은 버그를 표시하기위한 것입니다. – kumar
도중에'count (marks)'가 아닌'sum (marks)'을 원할 수도 있습니다. – IMSoP