우리의 Oracle 데이터베이스 응용 프로그램은 테이블이 테이블 때 우리는 SQL 문 성능은 다음을 사용 우리는이 칼럼 그래서Oracle 내장 UPPER 함수를 사용하여 SELECT 문의 성능이 저하됩니까?
를 사용하여 SELECT
속도를 높이기 위해이 열에 대한 INDEX
이 또한 PERSON_NAME
라는 열을 포함 PERSON
라는 포함 잘
SELECT *
FROM PERSON
WHERE 1=1
AND PERSON_NAME = ' Yajli '
;
그러나에 일부 비즈니스 사례
우리는
SELECT *
FROM PERSON
WHERE 1=1
AND UPPER(PERSON_NAME) = UPPER(' YajLi ')
;
그러나이 경우에 BAD 성능과 SELECT 쿼리에 우리를 이끌이 많이 걸릴 PERSON_NAME
으로 검색 그래서
우리는 SQL 문 다음 시도 대소 문자를 구분하지 않습니다 확인해야합니다 시간
는두 경우 모두에 SELECT
의 성능을 향상하는 방법 어떤 도움도 함께
* PERSON_NAME
으로 검색 민감한
01를 구분하지 않습니다*로 검색 PERSON_NAME
은 대소 문자를 구분합니다.
'upper (person_name) '에 인덱스를 만들 수 있습니다. –
두 번째 쿼리는 기존 인덱스를 사용할 수 없어 느립니다. 'UPPER (PERSON_NAME)'에 함수 기반 색인을 작성하십시오. – mathguy