이 문서는 지원되지 않는 버전의 PostgreSQL을위한 것입니다.
당신은에 대해 같은 페이지를 보려고 할 수 있습니다PostgreSQL : 문서 : 17 : 스포츠 토토 베트맨 사이트 추천 생성버전 또는 위에 나열된 다른 지원 버전 중 하나입니다.

생성 스포츠 토토 베트맨

이름

운영자 생성-새 스포츠 토토 베트맨 정의

시놉시스

운영자 생성이름(절차 =func_name[, leftarg =왼손잡이] [, rightarg =Righttype]
     [, 통근자 =com_op] [, Negator =NEG_OP]
     [, 제한 =RES_PROC] [, join =join_proc]
     [, 해시] [, 합병]
     [, sort1 =left_sort_op] [, sort2 =right_sort_op]
     [, ltcmp =Less_than_op] [, gtcmp =Greater_than_op])

입력

이름

정의 할 스포츠 토토 베트맨. 허용은 아래를 참조하십시오 캐릭터. 이름은 스키마 자격이 될 수 있습니다 (예 :운영자 생성 myschema.+ (...).

func_name

이 스포츠 토토 베트맨를 구현하는 데 사용되는 함수.

왼손잡이

운영자의 왼쪽 인수 유형, if 어느. 이 옵션은 왼쪽 단위로 생략됩니다 스포츠 토토 베트맨.

Righttype

운영자의 오른쪽 인수 유형, 있는 경우. 이 옵션은 올바른 연합에 대해 생략됩니다 스포츠 토토 베트맨.

com_op

이 스포츠 토토 베트맨의 통근자.

NEG_OP

이 스포츠 토토 베트맨의 부정 자.

RES_PROC

제한 선택성 추정기 기능 이 스포츠 토토 베트맨.

join_proc

이에 대한 결합 선택성 추정기 기능 스포츠 토토 베트맨.

해시

이 스포츠 토토 베트맨가 해시 조인을 지원할 수 있음을 나타냅니다.

병합

이 스포츠 토토 베트맨가 합병 조인을 지원할 수 있음을 나타냅니다.

left_sort_op

이 스포츠 토토 베트맨가 합병 조인을 지원할 수 있다면 왼쪽 데이터 유형을 정렬하는 스포츠 토토 베트맨보다 적은 운영자 이 스포츠 토토 베트맨.

right_sort_op

이 스포츠 토토 베트맨가 합병 조인을 지원할 수 있다면 오른쪽 데이터 유형을 정렬하는 스포츠 토토 베트맨보다 적은 운영자 이 스포츠 토토 베트맨.

Less_than_op

이 스포츠 토토 베트맨가 합병 조인을 지원할 수 있다면 입력 데이터 유형을 비교하는 스포츠 토토 베트맨보다 이 스포츠 토토 베트맨.

Greater_than_op

이 스포츠 토토 베트맨가 합병 조인을 지원할 수 있다면 입력 데이터 유형을 비교하는 스포츠 토토 베트맨보다 이 스포츠 토토 베트맨의.

출력

생성 스포츠 토토 베트맨

스포츠 토토 베트맨가 성공적으로 있으면 메시지가 반환되었습니다 생성.

설명

운영자 생성새를 정의합니다 스포츠 토토 베트맨,이름. 사용자 운영자가 소유자가됩니다.

스키마 이름이 주어지면 스포츠 토토 베트맨가 지정된 스키마. 그렇지 않으면 현재 스키마에서 생성됩니다 (검색 경로 앞쪽에있는 것; 참조current_schema ()).

​​같은 스키마의 두 스포츠 토토 베트맨가 동일한 이름을 가질 수 있습니다. 그들은 다른 데이터 유형에서 작동합니다. 이것을라고합니다.과부하. 시스템은 선택을 시도합니다 실제 입력 데이터 유형을 기반으로하는 의도 된 운영자 모호함입니다.

스포츠 토토 베트맨이름is 최대 순서지명-1 (63 by 기본값) 다음 목록에서 문자 :

+-*/< = ~! @#%^& | `? $

선택한 경우 몇 가지 제한이 있습니다 이름의 :
  • $단일 문자 스포츠 토토 베트맨이지만 a의 일부일 수 있습니다 Multicharacter 운영자 이름.

  • --and/*운영자 이름의 어느 곳에서나 나타날 수 없습니다. 그들은 의견의 시작으로 받아 들일 것입니다.

  • Multicharacter 운영자 이름은 끝날 수 없습니다+또는-가 아니라면 이름은 다음 문자 중 하나 이상을 포함합니다.

    ~! @#%^& | `? $

    예를 들어@-허용 스포츠 토토 베트맨 이름이지만*-그렇지 않습니다. 이 제한은 허용PostgreSQL구문 분석 SQL 호환 쿼리 사이의 공간이 필요하지 않습니다 토큰.

참고 :비 SQL 표준 스포츠 토토 베트맨와 함께 작업 할 때 이름, 일반적으로 인접한 스포츠 토토 베트맨를 분리해야합니다 모호성을 피할 수있는 공간이 있습니다. 예를 들어, 당신이있는 경우 왼쪽 언어 스포츠 토토 베트맨라는 정의@, 당신은 쓸 수 없습니다x*@y; 당신은 작성해야합니다x* @와이PostgreSQL두 개의 스포츠 토토 베트맨로 읽습니다 이름이 아닙니다.

스포츠 토토 베트맨! =<입력이 있으므로이 두 이름 항상 동등합니다.

적어도 하나의왼쪽andRightarg정의해야합니다. 이진을 위해 스포츠 토토 베트맨는 둘 다 정의되어야합니다. 올바른 단체 운영자의 경우 오직왼쪽동안 정의해야합니다 왼쪽 단지 운영자 만Rightarg정의해야합니다.

thefunc_name절차가 있어야합니다 이전에를 사용하여 정의되었습니다.생성 기능올바른 수를 수락하도록 정의되어야합니다. 표시된 유형의 인수 (1-2 개).

정류자 운영자가 존재하는 경우 식별해야합니다. 저것PostgreSQL반전을 할 수 있습니다 원하는 경우 피스포츠 토토 베트맨의 순서. 예를 들어, 스포츠 토토 베트맨 지역보다 <<<는 아마도 통근자가있을 것입니다 운영자, 지역 이상의 지역, . 따라서 쿼리 Optimizer는 자유롭게 변환 할 수 있습니다.

Box '((0,0), (1,1))' mybox.Description

to

myboxes.description <<< box '((0,0), (1,1))'

이것은 실행 코드가 항상 후자를 사용할 수 있도록 허용합니다. 쿼리 최적화를 다소 표현하고 단순화합니다.

마찬가지로, 부정적 스포츠 토토 베트맨가 있으면 식별. 운영자, 면적 평등 ===가 존재한다고 가정 해 봅시다 영역이 동일하지 않은 영역,! ==. Negator 링크는 쿼리를 허용합니다 단순화하기 위해 Optimizer

mybox.description === box '((0,0), (1,1))'

to

myboxes.description! == box '((0,0), (1,1))'

정류자 운영자 이름이 제공되는 경우PostgreSQL카탈로그에서 검색합니다. 그것이 발견되고 아직 정류자 자체가 없다면 통근자의 항목은 새로 생성되도록 업데이트되었습니다. 통근자로서 운영자. 이것은 부정기에도 적용됩니다. 이것은 두 스포츠 토토 베트맨의 정의를 허용하는 것입니다. 통근자 또는 서로의 부정관. 첫 번째 스포츠 토토 베트맨 정류기 또는 부정관없이 정의해야합니다 (AS 적절한). 두 번째 스포츠 토토 베트맨가 정의되면 첫 번째로 이름을 지정하십시오 정류자 또는 부정관으로. 첫 번째는 측면으로 업데이트됩니다 효과. (PostgreSQL 6.5, 그것은 또한 두 가지 모두를 갖기 위해 작동합니다 운영자는 서로를 참조합니다.)

the해시, 병합, Sort1, Sort2, LTCMPgtcmp지원을위한 옵션이 있습니다 조인을 수행 할 때 쿼리 최적화기.postgresql항상 조인을 평가할 수 있습니다 (즉, 두 개의 튜플 변수로 조항을 처리합니다. operator that returns a부울) by 반복적 인 대체. 게다가,PostgreSQL해시 조인 알고리즘을 사용할 수 있습니다. 그러나이 전략이 적용 가능한지 알아야합니다. 그만큼 현재 해시 조인 알고리즘은 스포츠 토토 베트맨에게만 정확합니다 평등 테스트를 나타냅니다. 또한 데이터 유형의 평등 유형의 표현의 비트 동등성을 의미해야합니다. (예를 들어, 사용하지 않는 비트가 포함 된 데이터 유형 평등 테스트의 문제는 해시 조정을 할 수 없습니다.)해시플래그는 쿼리를 나타냅니다 해시 조인이 안전하게 사용될 수있는 Optimizer 스포츠 토토 베트맨.

마찬가지로병합플래그가 표시됩니다 병합 소트 가이 운영자에게 유용한 조인 전략인지 여부. 에이 병합 조인 순서, 그리고 병합 결합 스포츠 토토 베트맨는 평등처럼 행동합니다 그 주문과 관련하여. 예를 들어 가능합니다 정수와 플로트 변수 간의 합병 평등 두 입력을 일반 숫자 순서로 정렬합니다. a의 실행 합병 결합은 시스템이 4 개를 식별 할 수 있어야합니다. 합병 평등 스포츠 토토 베트맨와 관련된 스포츠 토토 베트맨 :보다 적습니다 왼쪽 입력 데이터 유형에 대한 비교, 비교 이상의 비교 올바른 입력 데이터 유형, 두 가지 비교보다 덜 비교 데이터 유형 및 두 데이터의 비교보다 더 큰 비교 유형. 로 이름별로 이것을 지정할 수 있습니다.Sort1, Sort2, LTCMPgtcmp옵션 각기. 시스템은 기본 이름을 작성합니다<, <, <, 각각 이들 중 하나가 생략하면병합지정되어 있습니다. 또한,병합중 하나라도 암시 될 것으로 가정합니다 이 네 가지 운영자 옵션이 나타납니다.

다른 조인 전략이 실용적 인 것으로 밝혀지면postgresql이를 사용하려면 최적화 및 런타임 시스템이 필요합니다. 작업자가 정의 된 경우 추가 사양. 다행히도 연구 커뮤니티는 새로운 조인 전략을 발명합니다 드물게, 사용자 정의 조인의 일반성이 추가되었습니다 전략은 관련된 복잡성의 가치가있는 것으로 느껴지지 않았습니다.

the제한andJoin옵션 쿼리 최적화를 지원합니다 결과 크기 추정. 양식의 조항 인 경우 :

myboxes.description <<< box '((0,0), (1,1))'

자격에 있습니다.PostgreSQL분수를 추정해야 할 수도 있습니다 인스턴스 중myboxes만족합니다 조항. 함수RES_PROC등록 된 함수 여야합니다 (이미 정의되어 있음을 의미합니다. 사용기능 생성) 올바른 데이터 유형의 인수 및 부동 소수점을 반환합니다. 숫자. 쿼리 옵티마이저는 단순히이 함수를 통과합니다 매개 변수((0,0), (1,1))및 결과를 관계 크기로 곱하여 예상되는 것을 얻습니다. 인스턴스 수.

유사하게, 운영자의 피스포츠 토토 베트맨에 둘 다 포함 할 때 인스턴스 변수, 쿼리 옵티마이저는 크기를 추정해야합니다. 결과 조인. 함수24491_24502다른 부동 소수점을 반환합니다 두 가지의 추기성을 곱한 숫자 예상 결과 크기를 계산하기 위해 관련된 테이블

함수 간의 차이

my_procedure_1 (myboxes.description, box '((0,0), (1,1))')

및 스포츠 토토 베트맨

myboxes.description === box '((0,0), (1,1))'

PostgreSQL시도 운영자를 최적화하고 인덱스를 사용하여 제한하기로 결정할 수 있습니다. 운영자가 참여할 때의 검색 공간. 그러나 있습니다 함수를 최적화하려는 시도가 없으며 Brute에 의해 수행됩니다. 힘. 또한 기능은 여러 인수를 가질 수 있습니다 스포츠 토토 베트맨는 1 ~ 2 개로 제한됩니다.

노트

PostgreSQL 사용자 안내서더 정보. 참조드롭 스포츠 토토 베트맨to 데이터베이스에서 사용자 정의 스포츠 토토 베트맨 삭제.

스키마 자격을 제공하려면com_op또는 다른 선택적 인수, 사용Operator ()구문 예

Commutator = Operator (MySchema. ===),

usage

다음 명령은 새로운 운영자, 면적 평등, 정의, 박스 데이터 유형 :

생성 스포츠 토토 베트맨 === (
   leftarg = 상자,
   rightarg = 상자,
   절차 = area_equal_procedure,
   통근자 = ===,
   부정기 =! ==,
   제한 = area_restriction_procedure,
   join = area_join_procedure,
   해시,
   sort1 = <<<,
   sort2 = <<<
   - 정렬 스포츠 토토 베트맨가 제공되었으므로 합병이 암시됩니다.
   -LTCMP 및 GTCMP는 각각 <및로 가정됩니다.
);

호환성

SQL92

운영자 생성isPostgreSQL확장. 없음운영자 생성진술SQL92.