[ 고유 ] 인덱스 메이저 토토 사이트색인_이름켜짐테이블[ 사용 중acc_name ] ( 열 [ ops_name] [, ...] ) [ 고유 ] 인덱스 메이저 토토 사이트색인_이름켜짐테이블[ 사용 중acc_name ] ( func_name( 열 [, ... ]) [ ops_name ] )
시스템이 다음에서 중복된 값을 확인하도록 합니다. 인덱스가 생성될 때의 테이블(데이터가 이미 존재하는 경우) 및 데이터가 추가될 때마다. 데이터를 삽입하거나 업데이트하려고 시도합니다. 중복된 항목이 발생하면 오류.
생성될 색인의 이름.
인덱싱할 테이블의 이름입니다.
색인에 사용될 액세스 방법의 이름. 기본 액세스 방법은 BTREE입니다. Postgres는 세 가지를 제공합니다. 인덱스에 대한 액세스 방법:
Lehman-Yao 높은 동시성 구현 비트리.
Guttman의 2차 방정식을 사용하여 표준 rtree를 구현합니다. 분할 알고리즘.
Litwin의 선형 해싱 구현.
테이블의 열 이름.
관련 연산자 클래스. 자세한 내용은 아래를 참조하세요.
다음과 같은 값을 반환하는 함수 색인이 생성되었습니다.
인덱스가 성공적으로 완료되면 반환되는 메시지 메이저 토토 사이트되었습니다.
이 오류는 메이저 토토 사이트이 불가능한 경우 발생합니다. 색인.
색인 메이저 토토 사이트색인을 구성합니다색인_이름지정된테이블.
팁:색인은 주로 데이터베이스를 강화하는 데 사용됩니다. 성능. 그러나 부적절하게 사용하면 속도가 느려집니다. 성능.
위에 표시된 첫 번째 구문에서, 인덱스는 열 이름으로 지정됩니다. 여러 필드가 가능합니다. 인덱스 액세스 방법이 다중 열을 지원하는 경우 지정됩니다. 색인.
위에 표시된 두 번째 구문에서 인덱스는 사용자가 지정한 함수의 결과func_name하나 이상의 속성에 적용됨 단일 클래스의. 이들기능적 인덱스다음을 기반으로 데이터에 빠르게 액세스하는 데 사용할 수 있습니다. 일반적으로 약간의 변환이 필요한 연산자 기본 데이터에 적용합니다.
Postgres는 다음에 대한 btree, rtree 및 해시 액세스 방법을 제공합니다. 인덱스. btree 액세스 방법은 다음을 구현한 것입니다. Lehman-Yao 고동시성 Btree. rtree 액세스 방법 Guttman의 2차 분할을 사용하여 표준 rtree를 구현합니다. 알고리즘. 해시 액세스 방법은 다음을 구현합니다. Litwin의 선형 해싱. 우리는 오로지 다음 목적으로만 사용되는 알고리즘을 언급합니다. 이러한 모든 액세스 방법이 완전히 동적임을 나타냅니다. 주기적으로 최적화할 필요는 없습니다(예: 예를 들어 정적 해시 액세스 방법).
사용인덱스 삭제제거하다 색인입니다.
그포스트그레질의 최적화 프로그램은 인덱스가 생성될 때마다 btree 인덱스 사용을 고려합니다. 속성은 다음 중 하나를 사용하여 비교에 포함됩니다. <=, =, =,
그포스트그레질의 최적화 프로그램은 다음이 발생할 때마다 rtree 인덱스 사용을 고려할 것입니다. 색인화된 속성은 다음 중 하나를 사용하여 비교에 포함됩니다. <<, &<, &, , @, ~=, &&
그포스트그레질의 최적화 프로그램은 색인이 생성될 때마다 해시 색인 사용을 고려합니다. 속성은를 사용한 비교에 포함됩니다.=연산자.
현재는 btree 액세스 방법만 지원합니다. 다중 열 인덱스. 기본적으로 최대 16개의 키를 지정할 수 있습니다. (이 제한은 Postgres를 빌드할 때 변경될 수 있습니다.)
안연산자 클래스지정 가능 인덱스의 각 열에 대해. 연산자 클래스는 해당 열의 인덱스에서 사용할 연산자입니다. 예를 들어, 4바이트 정수의 btree 인덱스는 다음을 사용합니다.int4_ops클래스; 이 연산자 클래스에는 다음이 포함됩니다. 4바이트 정수에 대한 비교 함수. 실제로는 필드의 데이터 유형에 대한 기본 연산자 클래스는 일반적으로 충분하다. 연산자 클래스를 갖는 주요 요점은 일부 데이터 유형의 경우 의미 있는 데이터 유형이 두 개 이상 있을 수 있습니다. 주문. 예를 들어, 복소수를 정렬하고 싶을 수도 있습니다. 절대값 또는 실수부로 데이터 유형을 지정합니다. 우리는 할 수 있었다 이는 데이터 유형에 대해 두 개의 연산자 클래스를 정의한 다음 인덱스를 만들 때 적절한 클래스를 선택합니다. 또한 있다 특별한 목적을 가진 일부 연산자 클래스:
연산자 클래스box_ops그리고bigbox_ops둘 다 rtree를 지원합니다 의 인덱스상자데이터 유형. 는 차이점은 다음과 같습니다.bigbox_ops상자 좌표를 아래로 조정합니다. 곱셈에서 부동 소수점 예외를 방지하고, 매우 큰 부동 소수점에 대한 덧셈 및 뺄셈 좌표. 직사각형이 놓인 필드가 다음과 같은 경우 약 20,000 단위 평방 이상을 사용해야 합니다.bigbox_ops.
그int24_ops연산자 클래스는 int2 데이터에 대한 인덱스를 구성하고 수행하는 데 유용합니다. 쿼리 제한의 int4 데이터와 비교합니다. 마찬가지로,int42_ops지원 int2와 비교할 int4 데이터의 인덱스 쿼리의 데이터입니다.
다음 쿼리는 정의된 모든 연산자 클래스를 보여줍니다:
am.amname AS acc_name 선택,
opc.opcname AS ops_name,
opr.oprname AS ops_comp
pg_am am, pg_amop amop에서,
pg_opclass opc, pg_operator opr
amop.amopid = am.oid AND
amop.amopclaid = opc.oid AND
amop.amopopr = opr.oid
ORDER BY acc_name, ops_name, ops_comp
필드에 Btree 인덱스를 메이저 토토 사이트하려면제목테이블에서영화:
고유 인덱스 생성 title_idx
ON 영화(제목);
CREATE INDEX는포스트그레스언어 확장.
없습니다색인 메이저 토토 사이트명령 SQL92.