색인 정의는 an을 지정할 수 있습니다토토 결과 클래스인덱스의 각 열에 대해.
색인 생성이름
on테이블
(열
opclass
[(opclass_options
)] [정렬 옵션
] [, ...]);
토토 결과 클래스는 해당 열의 인덱스에서 사용하도록 연산자를 식별합니다. 예를 들어, 유형의 B- 트리 색인int4
사용int4_ops
클래스; 이 연산자 클래스에는 유형 값에 대한 비교 함수가 포함됩니다int4
. 실제로 열 데이터 유형의 기본 연산자 클래스로는 일반적으로 충분합니다.Collate
, ASC
/desc
및/또는Nulls First
/널 마지막
).
기본 연산자 외에 일부 내장 작업자 클래스가 있습니다.
토토 결과 클래스text_pattern_ops
, varchar_pattern_ops
및bpchar_pattern_ops
유형에 대한 B- 트리 색인 지원텍스트
, varchar
및char
각각. 기본 연산자 클래스와의 차이점은 로케일 별 콜레이션 규칙에 따라 값을 문자별로 비교한다는 것입니다.Like
또는 POSIX 정규식) 데이터베이스가 표준을 사용하지 않는 경우“C”로케일. 예를 들어, 당신은 a를 색인 할 수 있습니다.varchar
다음과 같은 열 :
test_table (col varchar_pattern_ops)에서 인덱스 test_index 만들기;
평범한 쿼리를 원하는 경우 기본 연산자 클래스와 함께 인덱스를 생성해야합니다<
, <=
, 또는
> =
인덱스 사용 비교. 이러한 쿼리는를 사용할 수 없습니다.
토토 결과 클래스. (일반 평등 비교는 이러한 연산자 클래스를 사용할 수 있습니다.) 다른 연산자 클래스와 동일한 열에서 여러 인덱스를 만들 수 있습니다.xxx
_pattern_ops
토토 결과 클래스, 기본 연산자 클래스가있는 인덱스는 C 로케일의 패턴 매칭 쿼리에 대해 사용할 수 있기 때문에xxx
_pattern_ops
다음 쿼리는 정의 된 모든 연산자 클래스를 보여줍니다.
AM.AMNAME AS index_Method를 선택하십시오.
연산자 클래스는 실제로 an이라는 더 큰 구조의 하위 집합 일뿐입니다.토토 결과 가족. 여러 데이터 유형이 유사한 동작을 갖는 경우, 교차 데이터 유형 연산자를 정의하고 인덱스로 작동하도록하는 것이 종종 유용합니다.
이전 쿼리 의이 확장 된 버전은 운영자 제품군에 다음과 같은 각 토토 결과 클래스가 다음과 같습니다.
AM.AMNAME AS index_Method,
이 쿼리는 모든 정의 된 토토 결과 제품군과 각 제품군에 포함 된 모든 토토 결과를 보여줍니다.
AM.AMNAME AS Index_Method,
PSQL명령이 있습니다\ dac
, \ daf
및\ dao
,이 쿼리의 약간 더 정교한 버전을 제공합니다.
올바른 문서에 아무것도 표시되면 일치하지 않습니다.이 양식문서 문제를보고하려면