비용이 많이 드는 (Oracle) 술어에 함수 기반 인덱스를 만들려고합니다. 연방 수사 국 (FBI)함수 기반 인덱스를 생성 할 때 누락 괄호 오류가 발생했습니다.
SELECT * FROM A4ORDERS WHERE TRIM(TO_CHAR(time_id, 'Month')) in ('December');
만들기 :
나는 12 월의 달의 값을 다시 가져 오는 A4ORDERS 테이블의 TIME_ID 컬럼에 인덱스를 생성 할
CREATE INDEX TIME_FIDX ON A4ORDERS(TRIM(TO_CHAR(time_id, 'Month')) in ('December'));
나는 "누락 수 오른쪽 괄호 "오류와 이유를 알 수없는 이유는 무엇입니까? 당신이 제공 할 수있는 모든 지침을 주시면 감사하겠습니다. 그 아래 알렉스 풀의 응답에서
솔루션 일 :
CREATE INDEX TIME_FIDX ON A4ORDERS(TRIM(TO_CHAR(time_id, 'Month')));
을하지만, 또한 당신이 더 간단 비트 수 :
CREATE INDEX TIME_FIDX ON A4ORDERS (TRIM(TO_CHAR(time_id, 'Month')));
색인은 "값을 되돌려 놓지 않습니다". 12 월의 값에 대해서만 색인을 원하십니까? –
예. 어떻게해야합니까? – ShoSom
나는 당신이 성취하려는 것을 설명해야한다고 생각합니다. 예를 들어 어떤 쿼리를 최적화하려고합니까? –