기존에 다음과 같은 화면이 있었고
하단에 검색란이 있었다.
다음과 같은 데이터가 있었을때
검색키워드로 검색 시 ‘AWRG’ 를 보내거나, ‘awrg’ 를 보냈을 때는
정확하게 일치하는 (대소문자) 데이터만 검색이 되었다.
-------- 대소문자 구별없이 검색이 될 수 있게 해달라는 고객의 추가요건이 생겼다. ----------
실무에서는 대문자나 소문자를 구별하지 않고 빠르게 검색할 수 있게
편의성을 추구하는 것 같다.
성능은 조금 느려지겠지만 해달라고 하니.......
◆ 기존쿼리(대소문자 구분하여 데이터검색)
- AWRG 키워드로 검색하였을때 AWRG를 포함한 데이터만 검색되고
- 똑같은 단어지만 awrg 키워드로 검색하였을때는 awrg를 포함한 데이터만 검색된다.
다음과 같이 대소문자를 구별하여 정확하게 단어가 일치한 데이터들만 찾아준다.
이 이유는 Oracle에서는 대소문자를 구분하기 때문에
정확히 일치한 값들만 찾아주기 때문이다.
<Oracle 대소문자 구별없이 검색하는 방법>
검색키워드 파라미터값과 검색기준이 되는 컬럼을 맞춰줘야 한다.
대문자로 맞추건, 소문자로 맞추건
Oracle에서 대문자나 소문자로 변환하는 함수는
UPPER() 또는 LOWER()
UPPER() 는 대문자로 변환하는 함수
LOWER() 는 소문자로 변환하는 함수 를 사용한다.
어떤 함수를 써도 결과는 똑같다.
나는 UPPER()로 적용했고...
다음과 같이 쿼리를 수정하니 검색키워드로
awrg를 입력하건 AWRG를 입력하건
쿼리수행시 모두 대문자 기준으로 검색이 되기 때문에
대소문자 구별없이 3건이 모두 검색된걸 확인할 수 있었다.
초간단~
'Database > Oracle' 카테고리의 다른 글
ORA-08002 : sequence is not yet defined in this session 해결방법 (0) | 2019.02.21 |
---|---|
오라클 컬럼추가/삭제/수정 & 날짜컬럼 변형 및 조작 & 오라클함수생성 방법 (0) | 2019.02.21 |
Oracle Database의 기본 개념-3 (0) | 2016.11.15 |
Oracle Database의 기본 개념-2 (0) | 2016.11.15 |
Oracle Database의 기본 개념-1 (0) | 2016.11.15 |