이 문서는 지원되지 않는 버전의 PostgreSQL을위한 것입니다.
당신은에 대해 같은 페이지를 볼 수 있습니다현재버전 또는 위에 나열된 다른 지원 버전 중 하나입니다.

41 장 확장SQL: 토토 핫

Postgres왼쪽 단시 지원, 우회전 및 이진 연산자. 연산자가 과부하 될 수 있습니다 다른 숫자와 인수 유형으로 재사용됩니다. 있다면 모호한 상황과 시스템은 올바른 것을 결정할 수 없습니다. 사용해야 할 연산자는 오류를 반환하고 왼쪽 및/또는 오른쪽 피연산자를 타이프 ​​캐스트하여 어느 쪽을 이해하도록 도와줍니다. 사용하려는 운영자. 2를 추가 할 연산자를 만듭니다 복소수는 다음과 같이 수행 할 수 있습니다. 먼저 우리는 a를 만들어야합니다 새로운 유형을 추가 할 수 있습니다. 그런 다음 연산자를 만들 수 있습니다 기능으로.

기능 작성 complex_add (complex, complex)
            복잡한 반환
            '$ pwd/obj/complex.so'로
            언어 'c';

         토토 핫 생성 + (
            leftarg = complex,
            rightarg = complex,
            절차 = complex_add,
            통근자 = +
         );

여기에서 이진 토토 핫를 만드는 방법을 보여주었습니다. 생성합니다 외교 사업자, 왼쪽 단원 중 하나를 생략하거나 RIGHTRARG (오른쪽 단독). 시스템에 충분한 유형을 제공하면 정보, 어떤 운영자를 자동으로 파악할 수 있습니다 사용.

test_complex에서 c로 (a + b)를 선택합니다.

         +---------------+
         | C |
         +---------------+
         | (5.2,6.05) |
         +---------------+
         | (133.42,144.95) |
         +--------------+