db
ORA-00918 열의 정의가 애매합니다
4개의 조인을 추가한 코드에서 에러가 발생했다. selectOne이나 select 코드가 없는 아주 구식 iBatis에서 selectList를 통하여 하나의 값만을 가져와야해서 기존에 있던 WHERE 조건에 이런저런 값들을 추가하였는데 오류가 발생했다
문제해결
조인된 테이블 중 겹치는 칼럼명이 존재하면, 어떤 테이블의 칼럼과 조건을 거는 것인지 WHERE절에서 오류가 발생하는 것이었다. 예를 들어 A테이블과 B테이블이 있을 때, A에는 주민등록번호가 있고 B에도 주민등록번호가 있으면 WHERE에선 A.주민등록번호인지 B.주민등록번호인지 확실하게 정해줘야 에러가 안난다. A 테이블에만 주민등록번호가 있으면 A.주민등록번호로 입력할 필요 없이 WHERE 주민등록번호 = ‘value’로 써도 알아듣는다. 앞에 이런 코드가 하나 있어서 오류를 찾기가 더 힘들었던 것 같다