이 문서는 지원되지 않는 버전의 스포츠 토토을위한 것입니다.
당신은에 대해 같은 페이지를 보려고 할 수 있습니다PostgreSQL : 문서 : 17 : 11.10. 토토 결과 수업 및 토토 결과버전 또는 위에 나열된 다른 지원 버전 중 하나입니다.

11.8. 운영자 클래스

인덱스 정의에 AN을 지정할 수 있습니다운영자 클래스인덱스의 각 열에 대해

색인 생성이름on테이블( opclass[, ...]);

운영자 클래스는 연산자가 해당 열에 대한 색인. 예를 들어, 유형의 B- 트리 색인int4사용int4_ops클래스; 이 운영자 클래스에는 포함됩니다 유형 값에 대한 비교 함수int4. 실제로 기본 연산자 클래스 열의 데이터 유형으로는 일반적으로 충분합니다. 의 요점 운영자 클래스를 갖는 것은 일부 데이터 유형의 경우 하나 이상의 의미있는 색인 동작이어야합니다. 예를 들어, 우리는 할 수 있습니다 절대 값으로 복잡한 수 데이터 유형을 정렬하고 싶습니다. 또는 진짜 부분. 우리는 두 연산자를 정의하여이를 수행 할 수 있습니다 데이터 유형에 대한 클래스 후 적절한 클래스를 선택합니다. 색인을 만들 때.

외에 일부 내장 연산자 클래스도 있습니다 기본값 :

  • 운영자 클래스text_pattern_ops, varchar_pattern_ops, bpchar_pattern_opsname_pattern_ops유형텍스트, varchar, char이름각각. 의 차이 기본 연산자 클래스는 값을 비교한다는 것입니다. The The The The The The The The The The The The The Cather에 의해 엄격하게 로케일 별 콜레이션 규칙. 이것은 이러한 연산자로 만듭니다 패턴과 관련된 쿼리로 사용하기에 적합한 클래스 일치하는 표현식 (Like또는 posix 정규 표현식) 서버가 사용하지 않을 때 기준"C"로케일. 로서 예를 들어 A를 색인 할 수 있습니다.Varchar다음과 같은 열 :

    test_table (col varchar_pattern_ops)에서 색인 test_index 만들기;

    기본값으로 색인을 만들어야합니다. 평범한 쿼리를 원한다면 운영자 클래스 색인 사용 비교. 이러한 쿼리는를 사용할 수 없습니다.xxx_pattern_ops운영자 클래스. 동일한 열에서 여러 인덱스를 만들 수 있습니다. 다른 운영자 클래스와 함께. C 로케일을 사용하는 경우 당신은 필요하지 않습니다xxx_pattern_ops운영자 클래스, 기본 연산자 클래스가있는 인덱스가 사용 가능하기 때문에 C 로케일의 패턴 매칭 쿼리.

다음 쿼리는 정의 된 모든 연산자 클래스를 보여줍니다.

AM.AMNAME AS index_Method를 선택하십시오.
       opc.opcname as opclass_name입니다
    PG_AM AM에서 PG_OPCLASS OPC
    여기서 opc.opcamid = am.oid
    INDEX_METHOD, OPCLASS_NAME; 주문

각각에 포함 된 모든 연산자를 각각으로 표시하도록 확장 할 수 있습니다. 수업:

AM.AMNAME AS Index_Method,
       opclass_name으로서 opc.opcname,
       opr.oid :: regoperator opclass_operator
    PG_AM AM, PG_OPCLASS OPC, PG_AMOP AMOP, PG_OPERATOR OPR
    여기서 opc.opcamid = am.oid 및
          amop.amopClaid = opc.oid 및
          amop.amopop = opr.oid
    INDEX_METHOD, OPCLASS_NAME, OPCLASS_OPERATOR; 주문