제가 개념이 부족해서 왜 틀리는지 알 수가 없어서 다시 한번 고수님들께 질문 올려봅니다.
참고로 access 2007 DB 를 사용하고 ADO 로 연결합니다.
TABLE member
Phone (char) 12 - PK
Name (char) 20 - 공백허용
CarNo (char) 10 - 공백허용
Pref (memo) - 공백허용
reg_date (date)
TABLE Point (공백 허용 필드 없음)
phone (char) 12
point1 (int)
point2 (int)
...
위의 두 테이블을 조인해서 point1,2 에 sum 을 해서 보여주려고 하는데 에러가 나는군요.
member 테이블에서 name 필드가 공백인 레코드가 몇개 있습니다.
-- SQL 문 --
select a.phone, a.name, a.carNo, a.pref, sum(b.point1), sum(b.point2)
from member a left outer join point b on a.point = b.point
group by a.phone
aDOquery 컴포넌트를 사용해서 dbgrid 와 에디터에 나눠서 보여주려고 하는데..
위의 SQL 문만 실행하면 에러가 나는군요.
"지정된 'name' 식을 계산함수의 일부로 포함하지 않는 쿼리를 실행하려 하였습니다"
이게 무슨 뜻인지도 모르겠네요..
SQL 문 어디가 잘못된 걸까요?
[P.S] select * 로 하고, group by 문을 지우면 에러가 안나고 실행이 되는 걸로 봐서 sum 이 문제일까요?
이렇게 하셔야 위의 SQL이 동작할거 같습니다.