CREATE OPERATOR — 새 연산자 정의
연산자 사설 토토 사이트이름( 절차 =함수_이름[, LEFTARG =left_type] [, RIGHTARG =right_type] [, 정류자 =com_op] [, NEGATOR =neg_op] [, 제한 =res_proc] [, JOIN =join_proc] [, 해시 ] [, 병합 ] )
연산자 사설 토토 사이트새 연산자를 정의합니다.이름. 운영자를 정의한 사용자가 소유자가 됩니다. 스키마 이름이 제공되면 지정된 스키마에 연산자가 생성됩니다. 그렇지 않으면 현재 스키마에 생성됩니다.
연산자 이름은 최대의 순서입니다NAMEDATALEN-다음 목록의 1개(기본적으로 63) 문자:
+ - * / < = ~ ! @ # % ^ & | ` ?
이름 선택에는 몇 가지 제한 사항이 있습니다.
--그리고/*연산자 이름은 주석의 시작으로 간주되므로 연산자 이름 어디에도 나타날 수 없습니다.
다중 문자 연산자 이름은 다음으로 끝날 수 없습니다.+또는-, 이름에 다음 문자 중 하나 이상이 포함되어 있지 않은 경우:
~ ! @ # % ^ & | ` ?
예를 들어,@-허용되는 연산자 이름이지만*-그렇지 않습니다. 이 제한은 다음을 허용합니다.PostgreSQL토큰 사이에 공백을 요구하지 않고 SQL 호환 명령을 구문 분석합니다.
사용=연산자 이름은 더 이상 사용되지 않습니다. 향후 릴리스에서는 완전히 허용되지 않을 수 있습니다.
운영자!=다음에 매핑됨<입력 시 이 두 이름은 항상 동일합니다.
다음 중 적어도 하나LEFTARG그리고RIGHTARG정의되어야 합니다. 이항 연산자의 경우 둘 다 정의해야 합니다. 오른쪽 단항 연산자의 경우에만LEFTARG정의되어야 하며 왼쪽 단항 연산자에만 해당오른쪽ARG정의되어야 합니다.
오른쪽 단항, 후위라고도 함, 연산자는 더 이상 사용되지 않으며 다음에서 제거됩니다.PostgreSQL버전 14.
그함수_이름프로시저는 이전에 다음을 사용하여 정의되어야 합니다.함수 사설 토토 사이트그리고 표시된 유형 중 올바른 수의 인수(1개 또는 2개)를 허용하도록 정의되어야 합니다.
다른 절은 선택적 연산자 최적화 절을 지정합니다. 그 의미는 다음에 자세히 설명되어 있습니다.토토 커뮤니티 PostgreSQL : 문서 : 10 : 37.13. 운영자 최적화 정보.
운영자를 생성하려면 다음이 있어야 합니다.사용인수 유형 및 반환 유형에 대한 권한 및실행기본 함수에 대한 권한. 정류자 또는 부정 연산자가 지정된 경우 이러한 연산자를 소유해야 합니다.
이름정의할 연산자의 이름. 허용되는 문자는 위를 참조하세요. 이름은 스키마로 한정될 수 있습니다. 예를 들면연산자 myschema 사설 토토 사이트.+ (...). 그렇지 않은 경우 현재 스키마에 연산자가 생성됩니다. 동일한 스키마에 있는 두 연산자가 서로 다른 데이터 유형에 대해 작동하는 경우 동일한 이름을 가질 수 있습니다. 이것을 이라고 합니다.오버로딩.
함수_이름이 연산자를 구현하는 데 사용되는 함수입니다.
left_type연산자의 왼쪽 피연산자의 데이터 유형(있는 경우). 이 옵션은 왼쪽 단항 연산자의 경우 생략됩니다.
right_type연산자의 오른쪽 피연산자의 데이터 유형(있는 경우). 이 옵션은 오른쪽 단항 연산자의 경우 생략됩니다.
com_op이 연산자의 정류자.
neg_op이 연산자의 부정자입니다.
res_proc이 연산자에 대한 제한 선택 추정 기능입니다.
join_proc이 연산자에 대한 조인 선택 추정기 함수입니다.
해시이 연산자가 해시 조인을 지원할 수 있음을 나타냅니다.
병합이 연산자가 병합 조인을 지원할 수 있음을 나타냅니다.
스키마 한정 연산자 이름을 제공하려면com_op또는 다른 선택적 인수인 경우에는연산자()구문, 예:
COMMUTATOR = OPERATOR(myschema.===) ,
참조PostgreSQL : 문서 : 10 : 37.12. 사용자 정의 와이즈 토토자세한 정보는.
연산자의 어휘 우선순위를 지정할 수 없습니다.연산자 사설 토토 사이트, 파서의 우선 순위 동작이 고정되어 있기 때문입니다. 참조섹션 4.1.6우선순위 세부정보.
더 이상 사용되지 않는 옵션정렬1, SORT2, LTCMP및GTCMP이전에는 병합 조인 가능 연산자와 연관된 정렬 연산자의 이름을 지정하는 데 사용되었습니다. 관련 연산자에 대한 정보는 대신 B-트리 연산자 계열을 살펴봄으로써 찾을 수 있으므로 이는 더 이상 필요하지 않습니다. 이러한 옵션 중 하나가 제공되면 암시적으로 설정하는 경우를 제외하고는 무시됩니다.병합사실입니다.
사용드롭 연산자데이터베이스에서 사용자 정의 연산자를 삭제합니다. 사용변경 연산자데이터베이스의 연산자를 수정합니다.
다음 명령은 데이터 유형에 대한 새로운 연산자인 면적 동등성을 정의합니다.상자:
연산자 사설 토토 사이트 === (
LEFTARG = 상자,
RIGHTARG = 상자,
절차 = 면적_동등_절차,
정류자 = ===,
부정자 = !==,
RESTRICT = Area_restriction_procedure,
JOIN = Area_join_procedure,
해시, 병합
);연산자 사설 토토 사이트은PostgreSQL확장. SQL 표준에는 사용자 정의 연산자에 대한 규정이 없습니다.