| 젠 토토 : 문서 : 9.6 : 젠 토토 | |||
|---|---|---|---|
| 토토 베이 : 문서 : 9.6 : Alter Operator Class | 토토 사이트 순위 PostgreSQL : 문서 : 9.6 : SQL 명령 | 토토 꽁 머니 PostgreSQL : 문서 : 9.6 : Alter Policy | |
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_owner| CURRENT_USER | SESSION_USER
ALTER 배트맨 토토 제품군이름사용 중index_method스키마 설정new_schemaALTER OPERATOR 제품군연산자 계열의 정의를 변경합니다. 제품군에 배트맨 토토 및 지원 기능을 추가하거나, 제품군에서 제거하거나, 제품군의 이름이나 소유자를 변경할 수 있습니다.
연산자와 지원 기능이 다음과 같은 계열에 추가될 때ALTER OPERATOR 제품군, 이들은 계열 내 특정 연산자 클래스의 일부가 아니지만 단지"느슨한"가족 내에서. 이는 이러한 연산자와 기능이 계열의 의미 체계와 호환되지만 특정 인덱스의 올바른 기능에 필요하지 않음을 나타냅니다. (그렇게 필요한 연산자와 함수는 대신 연산자 클래스의 일부로 선언되어야 합니다. 참조PostgreSQL : 문서 : 9.6 : 운영자 토토 꽁 머니 생성.) 포스트그레SQL가족의 느슨한 구성원은 언제든지 가족에서 삭제될 수 있지만 연산자 클래스의 구성원은 전체 클래스와 이에 종속된 모든 색인을 삭제하지 않고 삭제할 수 없습니다. 일반적으로 단일 데이터 유형 연산자 및 함수는 특정 데이터 유형에 대한 인덱스를 지원하는 데 필요하기 때문에 연산자 클래스의 일부인 반면, 교차 데이터 유형 연산자 및 함수는 계열의 느슨한 구성원으로 만들어집니다.
이용하려면 슈퍼유저여야 합니다.ALTER OPERATOR 제품군. (잘못된 연산자 계열 정의로 인해 서버가 혼란스럽거나 충돌할 수도 있기 때문에 이러한 제한이 적용됩니다.)
ALTER OPERATOR 제품군현재 연산자 계열 정의에 인덱스 메소드에 필요한 모든 연산자 및 함수가 포함되어 있는지 여부나 연산자 및 함수가 자체 일관성 세트를 형성하는지 여부를 확인하지 않습니다. 유효한 연산자 계열을 정의하는 것은 사용자의 책임입니다.
기존 연산자 계열의 이름(선택적으로 스키마 한정).
이 연산자 계열에 대한 색인 방법의 이름입니다.
연산자 계열과 관련된 연산자에 대한 인덱스 방법의 전략 번호입니다.
연산자 계열과 연관된 연산자의 이름(선택적으로 스키마 한정).
안에배트맨 토토절, 연산자의 피연산자 데이터 유형, 또는없음왼쪽 단항 또는 오른쪽 단항 연산자를 나타냅니다. 비교 가능한 구문과 달리연산자 클래스 생성, 피연산자 데이터 유형은 항상 지정되어야 합니다.
안에기능 추가절, 함수의 입력 데이터 유형과 다른 경우 함수가 지원하려는 피연산자 데이터 유형입니다. B-트리 비교 함수 및 해시 함수의 경우 지정할 필요가 없습니다.op_type함수의 입력 데이터 유형은 항상 사용하기에 올바른 유형이기 때문입니다. B-트리 정렬 지원 함수와 GiST, SP-GiST 및 GIN 연산자 클래스의 모든 함수의 경우 함수와 함께 사용할 피연산자 데이터 유형을 지정해야 합니다.
에드롭 기능절, 함수가 지원하려는 피연산자 데이터 유형을 지정해야 합니다.
기존 이름(선택적으로 스키마 한정)브트리순서 연산자와 연관된 정렬 순서를 설명하는 연산자 계열.
둘 다 아니라면검색용아니요주문용지정되었습니다.검색용기본값입니다.
연산자 계열과 관련된 함수에 대한 인덱스 메소드의 지원 절차 번호입니다.
연산자 계열에 대한 색인 방법 지원 절차인 함수의 이름(선택적으로 스키마 한정).
함수의 매개변수 데이터 유형.
배트맨 토토 계열의 새 이름입니다.
배트맨 토토 가족의 새로운 소유자.
연산자 계열의 새로운 스키마.
그배트맨 토토그리고기능절은 어떤 순서로든 나타날 수 있습니다.
다음에 주목하세요.드롭구문은 다음만을 지정합니다"슬롯"연산자 계열에서 전략 또는 지원 번호 및 입력 데이터 유형별. 슬롯을 차지하는 연산자나 함수의 이름은 언급되지 않습니다. 또한,드롭 기능지정할 유형은 함수가 지원하려는 입력 데이터 유형입니다. GiST, SP-GiST 및 GIN 인덱스의 경우 이는 함수의 실제 입력 인수 유형과 아무 관련이 없을 수 있습니다.
인덱스 기계는 함수를 사용하기 전에 함수에 대한 액세스 권한을 확인하지 않기 때문에 연산자 계열에 함수나 연산자를 포함시키는 것은 공개 실행 권한을 부여하는 것과 같습니다. 이는 일반적으로 연산자 계열에서 유용한 함수 종류에 대해서는 문제가 되지 않습니다.
연산자는 SQL 함수에 의해 정의되어서는 안 됩니다. SQL 함수는 호출 쿼리에 인라인될 가능성이 높으며, 이로 인해 최적화 프로그램이 쿼리가 인덱스와 일치하는지 인식하지 못하게 됩니다.
이전PostgreSQL8.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) ;