728x90
반응형
* 오라클 equal 조회시 자바 프로그램에서 사용하는 쿼리의 = 검색시 결과가 안나올때
그런데 toad 같은 sql 툴에서는 결과가 나오는 경우에는 컬럼 형식이 char 인지 확인해봐야합니다.
예를 들어서 char는 varchar2와 달라서 컬럼크기가 13이고 데이터 크기가 10이면 나머지 3자리에 공백을 채웁니다.
그래서 쿼리문에 컬럼에 trim을 쓰던지 rpad를 사용해서 공백을 없어던지 조회할 값에 공백을 채워서 조회를 하면된다.
그런데 종종 where 절 컬럼에 trim을 쓰면 쿼리가 늦어지는 경우가 있습니다.
사용할 쿼리를 미리 테스트한 후에 빠른쪽으로 맞춰서 사용하세요.
예) where trim(컬럼명) = 'test'
이럴땐 rpad를 쓰면 된다. rpad('비교할값이나 컬럼명',컬럼자리수, 대처할값)
예) where 컬럼명 = rpad('1234567890' ,13, ' ')
728x90
반응형
'프로그램이야기 > oracle' 카테고리의 다른 글
오라클 인덱스를 사용하지 못하는 경우 (0) | 2015.12.30 |
---|---|
ORACLE COUNT 절 GROUP BY 같이 이용하는 경우 (0) | 2015.12.23 |
컬럼명으로 테이블 찾는 쿼리문 (0) | 2015.08.24 |
댓글