포스트그레SQL여러 가지 제공 인덱스 토토 사이트 순위: B-트리, 해시, GiST 및 GIN. 각 인덱스 토토 사이트 순위은 다양한 토토 사이트 순위에 가장 적합한 다양한 알고리즘 쿼리. 기본적으로는색인 생성명령은 가장 일반적인 토토 사이트 순위에 맞는 B-트리 토토 사이트 순위를 생성합니다. 상황.
B-트리는 동등성 및 범위 쿼리를 처리할 수 있습니다. 어떤 순서로 정렬될 수 있는 데이터입니다. 특히,포스트그레SQL쿼리 플래너는 인덱스된 열이 있을 때마다 B-트리 인덱스 사용을 고려하십시오. 다음 연산자 중 하나를 사용하여 비교에 포함됩니다.
| < |
| <= |
| = |
| = |
최적화 프로그램은 쿼리에 B-트리 토토 사이트 순위를 사용할 수도 있습니다. 패턴 일치 연산자 관련좋아요그리고~ if패턴은 일정하며 문자열의 시작 부분에 고정됨(예:col LIKE 'foo%'또는col ~ '^foo'하지만 아님col LIKE '%bar'. 그러나 데이터베이스가 C 로케일을 사용하지 않는 경우에는 다음이 필요합니다. 지원할 특수 연산자 클래스를 사용하여 인덱스를 생성합니다. 패턴 일치 쿼리의 인덱싱; 참조섹션 11.9아래. 그것은 또한 B-트리 토토 사이트 순위를 사용할 수 있음좋아요그리고~*, 그러나 패턴이 시작되는 경우에만 해당 알파벳이 아닌 문자, 즉 알파벳이 아닌 문자 대문자/소문자 변환의 영향을 받습니다.
해시 토토 사이트 순위는 단순 동등성만 처리할 수 있습니다. 비교. 쿼리 플래너는 해시 토토 사이트 순위 사용을 고려합니다. 인덱싱된 열이 비교에 포함될 때마다=연산자. (해시 인덱스는 지원하지 않습니다.NULL임검색합니다.) 다음 명령은 해시 인덱스를 생성하는 데 사용됩니다.
색인 생성이름켜짐테이블해시 사용 중 (열);
참고:해시 인덱스 작업은 현재 없습니다 WAL에 기록되므로 해시 인덱스를 다음을 사용하여 다시 작성해야 할 수도 있습니다.REINDEX데이터베이스 충돌 후. 에 대한 이러한 이유로 현재 해시 인덱스 사용은 권장되지 않습니다.
GiST 인덱스는 단일 종류의 인덱스가 아니지만, 오히려 다양한 인덱싱이 가능한 인프라 전략을 실행할 수 있습니다. 이에 따라 특정 GiST 인덱스를 사용할 수 있는 연산자는 다음에 따라 다릅니다. 인덱싱 전략(the연산자 수업). 예를 들어, 표준 분포는포스트그레SQLGiST 포함 여러 2차원 기하학적 데이터에 대한 연산자 클래스 다음 연산자를 사용하여 색인화된 쿼리를 지원하는 유형입니다.
| << |
| &< |
| & |
| <<| |
| &<| |
| |& |
| | |
| @ |
| <@ |
| ~= |
| && |
GIN 인덱스는 다음을 처리할 수 있는 반전된 인덱스입니다. 두 개 이상의 키를 포함하는 값(예: 배열) 좋아요 GiST, GIN은 다양한 사용자 정의 인덱싱을 지원할 수 있습니다. 전략과 GIN 지수에 사용되는 특정 연산자 인덱싱 전략에 따라 다르게 사용될 수 있습니다. 로서 예를 들어, 표준 분포PostgreSQL다음에 대한 GIN 연산자 클래스를 포함합니다. 이를 사용하여 인덱스 쿼리를 지원하는 1차원 배열 연산자:
| <@ |
| @ |
| = |
| && |