ALTER OPERATOR 제품군이름사용 중index_method추가 토토 꽁 머니전략_번호 operator_name ( op_type, op_type) [ 검색용 | 주문:sort_family_name] | 기능지원_번호 [ ( op_type [ , op_type ] ) ] 함수_이름 ( argument_type[, ...] ) [, ... ] ALTER 토토 꽁 머니 제품군이름사용 중index_method드롭 토토 꽁 머니전략_번호 ( op_type [ , op_type] ) | 기능지원_번호 ( op_type [ , op_type] ) [, ... ] ALTER 토토 꽁 머니 제품군이름사용 중index_method이름을 다음으로 변경:new_nameALTER OPERATOR 제품군이름사용 중index_method소유자:new_ownerALTER OPERATOR 제품군이름사용 중index_method스키마 설정new_schema
ALTER OPERATOR 제품군변경 연산자 제품군의 정의. 연산자를 추가할 수 있으며 가족에게 기능을 지원하거나 가족에서 제거하거나 가족의 이름이나 소유자를 변경합니다.
연산자와 지원 기능이 계열에 추가되는 경우 와 함께ALTER OPERATOR 제품군, 그렇지 않습니다. 제품군 내 특정 연산자 클래스의 일부이지만 그냥"느슨한"가족 내에서. 이 이는 이러한 연산자와 함수가 다음과 호환됨을 나타냅니다. 가족의 의미는 정확하지만 필수는 아닙니다. 특정 인덱스의 기능. (연산자와 함수는 그래서 필수이므로 연산자 클래스의 일부로 선언해야 합니다. 대신; 참조PostgreSQL :.) 포스트그레SQL할 것이다 느슨한 가족 구성원이 가족에서 제외되도록 허용합니다. 언제든지, 그러나 연산자 클래스의 멤버는 삭제할 수 없습니다. 전체 클래스와 의존하는 인덱스를 삭제하지 않고 그것. 일반적으로 단일 데이터 유형 연산자와 함수는 인덱스를 지원하는 데 필요하기 때문에 연산자 클래스 특정 데이터 유형에 대해 교차 데이터 유형 연산자와 기능은 느슨한 가족 구성원이 됩니다.
이용하려면 슈퍼유저여야 합니다.변경 토토 꽁 머니 가족. (이 제한은 잘못된 연산자 제품군 정의는 혼란을 주거나 충돌을 일으킬 수 있습니다. 서버.)
ALTER OPERATOR 제품군하지 않습니다 현재 토토 꽁 머니 제품군 정의에 포함되어 있는지 확인하십시오. 인덱스 메소드에 필요한 모든 연산자와 함수, 연산자와 함수가 일관성 있는 집합을 형성하는지 여부. 유효한 연산자를 정의하는 것은 사용자의 책임입니다. 가족.
참조롤 토토 PostgreSQL : 문서화 : 9.1 : 인덱스에 대한 인터페이스 확장더 자세히 알아보기 정보.
기존 이름(선택적으로 스키마 한정) 연산자 계열.
이 연산자 계열의 인덱스 메소드 이름은 다음과 같습니다. for.
연산자에 대한 인덱스 방법의 전략 번호 연산자 계열과 연관되어 있습니다.
연산자의 이름(선택적으로 스키마 한정) 연산자 계열과 연관되어 있습니다.
안에토토 꽁 머니절, 연산자의 피연산자 데이터 유형 또는없음왼쪽 단항 또는 오른쪽 단항을 나타냄 토토 꽁 머니. 비교 가능한 구문과 달리연산자 클래스 생성, 피연산자 데이터 유형은 항상 지정되어야 합니다.
안에기능 추가절, 함수가 지원하려는 피연산자 데이터 유형, 함수의 입력 데이터 유형과 다른 경우. B-트리 및 해시 인덱스의 경우 지정할 필요가 없습니다.op_type이후 함수의 입력 데이터 유형은 항상 올바른 유형입니다. 사용합니다. GIN 및 GiST 인덱스의 경우 다음을 지정해야 합니다. 함수와 함께 사용될 입력 데이터 유형입니다.
에드롭 기능절, 함수가 지원하려는 피연산자 데이터 유형 지정해야 합니다.
기존 이름(선택적으로 스키마 한정)브트리연산자 계열 순서와 관련된 정렬 순서를 설명합니다. 연산자.
둘 다 아니라면검색용아니요주문용지정되었습니다.검색용기본값입니다.
인덱스 메소드의 지원 절차 번호 연산자 계열과 관련된 함수입니다.
함수의 이름(선택적으로 스키마 한정) 그것은 토토 꽁 머니를 위한 인덱스 방법 지원 절차입니다. 가족.
함수의 매개변수 데이터 유형.
토토 꽁 머니 계열의 새 이름입니다.
토토 꽁 머니 가족의 새로운 소유자.
연산자 계열의 새로운 스키마.
그토토 꽁 머니그리고기능절은 어떤 순서로든 나타날 수 있습니다.
다음에 주목하세요.드롭구문만 를 지정합니다."슬롯"연산자에서 제품군, 전략 또는 지원 번호 및 입력 데이터 유형별. 는 슬롯을 차지하는 연산자나 함수의 이름이 아닙니다. 언급됨. 또한,드롭 기능지정할 유형은 함수의 입력 데이터 유형입니다. 지원하려는 의도; GIN 및 GiST 인덱스의 경우 실제 입력 인수 유형과는 아무런 관련이 없습니다. 기능.
인덱스 기계가 액세스 권한을 확인하지 않기 때문에 함수 또는 연산자를 포함하여 함수를 사용하기 전에 함수에 대해 토토 꽁 머니 계열에서는 공개 실행을 허용하는 것과 같습니다. 그것에 대한 허가. 일반적으로 이런 종류의 문제는 아닙니다. 연산자 계열에 유용한 함수입니다.
연산자는 SQL 함수로 정의되어서는 안 됩니다. SQL 함수는 호출 쿼리에 인라인될 가능성이 높습니다. 최적화 프로그램이 쿼리를 인식하지 못하게 됩니다. 색인과 일치합니다.
이전포스트그레SQL8.4, 그토토 꽁 머니절에는 다음이 포함될 수 있습니다.다시 확인옵션. 이것은 더 이상 인덱스 연산자가 다음과 같으므로 지원됩니다."손실"이제 런타임에 즉시 결정됩니다. 이를 통해 토토 꽁 머니가 다음과 같은 경우를 효율적으로 처리할 수 있습니다. 아니면 손실이 없을 수도 있습니다.
다음 예제 명령은 교차 데이터 유형 연산자를 추가합니다 이미 포함된 연산자 제품군에 대한 지원 기능 데이터 유형에 대한 B-트리 연산자 클래스int4그리고int2.
btree ADD를 사용하는 ALTER OPERATOR FAMILY 정수_ops -- int4 대 int2 연산자 1 < (int4, int2) , 연산자 2 <= (int4, int2) , 연산자 3 = (int4, int2) , 연산자 4 = (int4, int2) , 연산자 5 (int4, int2) , 기능 1 btint42cmp(int4, int2) , -- int2 대 int4 연산자 1 < (int2, int4) , 연산자 2 <= (int2, int4) , 연산자 3 = (int2, int4) , 연산자 4 = (int2, int4) , 연산자 5 (int2, int4) , 함수 1 btint24cmp(int2, int4) ;
이 항목을 다시 제거하려면:
btree DROP을 사용하는 ALTER OPERATOR FAMILY 정수_ops -- int4 대 int2 연산자 1 (int4, int2) , 연산자 2 (int4, int2) , 연산자 3 (int4, int2) , 연산자 4 (int4, int2) , 연산자 5 (int4, int2) , 함수 1 (int4, int2) , -- int2 대 int4 연산자 1 (int2, int4) , 연산자 2 (int2, int4) , 연산자 3 (int2, int4) , 연산자 4 (int2, int4) , 연산자 5 (int2, int4) , 함수 1(int2, int4) ;