Postgresql 9.3.25 문서화 | ||||
---|---|---|---|---|
PostgreSQL : 문서 : 9.3 : 범퍼카 토토 유형 | PostgreSQL : 문서 : 9.3 : 데이터 윈 토토 | 8 장. 데이터 | PostgreSQL : 문서 : 9.3 : 객체 식별자 토토 캔 |
범위 사설 토토은 다양한 값을 나타내는 데이터 사설 토토입니다.하위 사설 토토). 예를 들어, 범위타임 스탬프시간 범위를 나타내는 데 사용될 수 있습니다tsrange(짧은"타임 스탬프 범위") 및타임 스탬프하위 사설 토토입니다. 하위 사설 토토은 총계가 있어야합니다
범위 사설 토토은 많은 요소를 나타 내기 때문에 유용합니다
PostgreSQL은 다음과 같은 내장 범위 사설 토토과 함께 제공됩니다.
int4Range- 범위정수
int8Range- 범위bigint
NumRange- 범위숫자
tsrange- 범위시간대가없는 타임 스탬프
TSTZRANGE- 범위시간대가있는 타임 스탬프
Daterange- 범위날짜
또한 자신의 범위 사설 토토을 정의 할 수 있습니다. 보다사설 토토 만들기자세한 내용은
모든 비어 있지 않은 범위에는 두 개의 경계가 있습니다.
범위의 텍스트 형태에서 포괄적 인 하한은"["독점적 인 하한은입니다"(". 마찬가지로, 포괄적 인 상한은입니다"]", 독점적 인 상한은입니다")". (보다섹션 8.17.5더 많은 것
함수lower_incand어퍼_inc하부의 포괄 성을 테스트하십시오
범위의 하한을 생략 할 수 있습니다.
이것은 하한이임을 고려하는 것과 같습니다."마이너스 인피니티"또는 상한은"Plus Infinity"각각. 그러나 참고
또한 일부 요소 사설 토토은이라는 개념이 있습니다."Infinity", 그러나 그것은 단지 또 다른 값입니다.[오늘,]|[오늘,). 하지만[오늘, 인피니티][오늘, 인피니티)- 후자는 그것을 제외합니다타임 스탬프valueInfinity.
함수lower_infand어퍼 _inf무한 하부 및 상한을 테스트합니다
범위 값에 대한 입력은 다음 중 하나를 따라야합니다.
(하위 바운드,상한)하위 바운드,상한]하위 바운드,상한)하위 바운드,상한]
괄호 또는 브래킷은 하부와 상단이빈
the하위 바운드둘 중 하나 일 수 있습니다상한하위 사설 토토에 대한 유효한 입력 또는
각 바운드 값은 사용하여 인용 할 수 있습니다"(이중 인용) 문자. 바운드 값이 필요합니다"", 아무것도 쓰지 않기 때문에 무한대를 의미합니다
범위 값 전후에 공백이 허용되지만
참고 :이 규칙은 글쓰기와 매우 유사합니다섹션 8.16.6
예 :
- 3 포함, 7은 포함되지 않으며 그 사이에 모든 지점이 포함됩니다.
각 범위 유형은 다음과 같은 이름의 생성자 기능을 갖습니다."()", "(]", "[)"또는"[]". 예를 들어:
- 전체 형식은 : 하한, 상한 및 텍스트 인수를 나타냅니다.
개별 범위는 요소 사설 토토이 잘 정의 된 것입니다"단계":정수또는날짜. 이러한 사설 토토에서숫자사설 토토은 범위와 마찬가지로 연속적입니다타임 스탬프. (일지라도타임 스탬프정밀도가 제한되어 있으며 가능합니다
개별 범위 사설 토토에 대해 생각하는 또 다른 방법은"다음"또는"이전"각 요소 값에 대한 값.[4,8]and(3,9)동일한 값 세트를 나타냅니다.
개별 범위 사설 토토에 a가 있어야합니다.Canonicalization
내장 범위 사설 토토int4Range, int8Range및Daterange모두를 포함하는 표준 형태를 사용합니다[). 사용자 정의 범위 사설 토토은 다른 것을 사용할 수 있습니다
사용자는 자신의 범위 사설 토토을 정의 할 수 있습니다. 가장 일반적인 이유float8:
범위로 FloatRange 사설 토토 생성 (
왜냐하면float8의미가 없음"단계", 우리는 a를 정의하지 않습니다
하위 사설 토토이사설 토토 만들기명령표준함수. 그만큼[1, 7]and[1, 8)타임 스탬프단계를 가질 수 있습니다
자신의 범위 사설 토토 정의도
또한 GIST와 함께 사용할 범위 사설 토토subtype_diff, 함수. (지수는 할 것입니다subtype_diffX마이너스Y)로 표시float8값. 위의 예에서는 그 기능입니다float8마이너스 연산자subtype_diff함수
참조PostgreSQL : 문서 : 9.3 : 토토 사이트 생성더 많은 경우
gist 및 sp-gist 인덱스는 테이블 열에 대해 생성 될 수 있습니다.
GIST를 사용하여 예약에서 인덱스 예약 _IDX 생성;
GIST 또는 SP-GIST 인덱스는 다음과 관련된 쿼리를 가속화 할 수 있습니다.=, &&, <@, @>, <<, , -|-, &<및&(참조표 9-45
또한 테이블 용 B- 트리 및 해시 인덱스를 만들 수 있습니다.<and운영자,
while고유 한는 자연스러운 제약입니다테이블 작성). 제외 제약 조건이 허용됩니다"비 겹치핑"범위 유형에서. 예를 들어:
테이블 예약 생성 (
그 제약 조건은 겹치는 값을 방지합니다
예약 값에 삽입
당신은를 사용할 수 있습니다btree_gist배제를 정의하기위한 확장btree_gist설치, 다음은 설치됩니다
확장 생성 btree_gist;