PostgreSQL 9.2.3 에서이 단순화 된 테이블을 만들려고합니다.
CREATE TABLE test (
user_id INTEGER,
startend TSTZRANGE,
EXCLUDE USING gist (user_id WITH =, startend WITH &&)
);
하지만이 오류가 발생합니다.
ERROR: data type integer has no default operator class for access method "gist" HINT: You must specify an operator class for the index or define a default operator class for the data type.
PostgreSQL의 문서는이 예를 사용 나를 위해 작동하지 않습니다
CREATE TABLE room_reservation (
room text,
during tsrange,
EXCLUDE USING gist (room WITH =, during WITH &&)
);
같은 오류 메시지.
그리고 이것도 저에게 효과적이지 않습니다.
CREATE TABLE zoo (
cage INTEGER,
animal TEXT,
EXCLUDE USING gist (cage WITH =, animal WITH <>)
);
같은 오류 메시지.
문제없이 이것을 만들 수 있습니다.
CREATE TABLE test (
user_id INTEGER,
startend TSTZRANGE,
EXCLUDE USING gist (startend WITH &&)
);
이:
CREATE TABLE test (
user_id INTEGER,
startend TSTZRANGE,
EXCLUDE USING btree (user_id WITH =)
);
나는이 작업을 수행하는 방법을 알아 내거나 작동하지 않는 이유를 알아내는 데 도움이되는 힌트를 찾기 위해 꽤 많은 시간을 보냈습니다. 어떤 아이디어?