안녕하세요. 큐브리드 7.2 버전부터 열심히 사용하고 있는 사용자입니다.
현재는 큐브리드 2008 R 2.2 버전에서 프로그램을 개발하고 있는데요.
한가지 이해가 되지 않는 부분이 있어서 이렇게 글을 적어봅니다.
현재 테이블이 4 개 있습니다.
회원, 학교, 중학교, 전문계고 이중 중학교 테이블과 전문계고테이블은 학교 테이블을 상속받아서 생성을 한 상태입니다. 그런데 다음과 같은 쿼리를
날리면 그 결과가 이상하게 나오네요.
SELECT a.f_login_id, b.f_full_name, b.f_grade
FROM t_member a LEFT JOIN ALL t_school b ON a.f_school_code = b.f_code
이렇게 하면 그 결과가
f_login_id f_full_name f_grade
silubsupport null null
middleteacher null null
goeip null null
middleadmin null null
이렇게 나오네요.
그런데
SELECT a.f_login_id, b.f_full_name, b.f_grade
FROM t_member a, ALL t_school b WHERE a.f_school_code = b.f_code
위와 같이 질의를 하면
f_login_id f_full_name f_grade
silubsupport 달성정보고등학교 전문계고
middleteacher 테스트중학교 중학교
middleadmin 테스트중학교 중학교
goeip 대구광역시교육청 교육청
위 두쿼리가 결과가 서로 다르게 나오면 될것 같지 않은데요. 그런데 의구심이 드는 것은 이전까지는 첫번째 쿼리(left join)가 정상적으로 작동을 했거든요.
두 쿼리의 차이가 있나요?
현재는 큐브리드 2008 R 2.2 버전에서 프로그램을 개발하고 있는데요.
한가지 이해가 되지 않는 부분이 있어서 이렇게 글을 적어봅니다.
현재 테이블이 4 개 있습니다.
회원, 학교, 중학교, 전문계고 이중 중학교 테이블과 전문계고테이블은 학교 테이블을 상속받아서 생성을 한 상태입니다. 그런데 다음과 같은 쿼리를
날리면 그 결과가 이상하게 나오네요.
SELECT a.f_login_id, b.f_full_name, b.f_grade
FROM t_member a LEFT JOIN ALL t_school b ON a.f_school_code = b.f_code
이렇게 하면 그 결과가
f_login_id f_full_name f_grade
silubsupport null null
middleteacher null null
goeip null null
middleadmin null null
이렇게 나오네요.
그런데
SELECT a.f_login_id, b.f_full_name, b.f_grade
FROM t_member a, ALL t_school b WHERE a.f_school_code = b.f_code
위와 같이 질의를 하면
f_login_id f_full_name f_grade
silubsupport 달성정보고등학교 전문계고
middleteacher 테스트중학교 중학교
middleadmin 테스트중학교 중학교
goeip 대구광역시교육청 교육청
위 두쿼리가 결과가 서로 다르게 나오면 될것 같지 않은데요. 그런데 의구심이 드는 것은 이전까지는 첫번째 쿼리(left join)가 정상적으로 작동을 했거든요.
두 쿼리의 차이가 있나요?