롤 토토 : 문서 : 9.5 : 롤 토토 | |||
---|---|---|---|
이전 | PostgreSQL : 문서 : 9.5 : 젠 토토 및 연산자 | 제 9 장 기능 및 연산자 | 다음 |
기하학적 유형포인트, 사설 토토, lseg, line, Path, Polygon및Circle큰 기본 지원 기능 및 연산자 세트가 있습니다.표 9-31, 표 9-32및표 9-33.
주의 |
"과 동일합니다.운영자,~=, 일반적인 평등 개념을 나타냅니다.포인트, 사설 토토, Polygon및Circle유형. 이러한 유형 중 일부는도 있습니다.=운영자이지만=동등한 비교영역만. 다른 스칼라 비교 연산자 (<=등) 마찬가지로 이러한 유형의 영역을 비교합니다. |
표 9-31. 기하학적 운영자
운영자 | 설명 | example |
---|---|---|
+ | 번역 | 사설 토토 '((0,0), (1,1))' + Point '(2.0,0)' |
- | 번역 | 사설 토토 '((0,0), (1,1))' - 포인트 '(2.0,0)' |
* | 스케일링/회전 | 사설 토토 '((0,0), (1,1))' * 포인트 '(2.0,0)' |
/ | 스케일링/회전 | 사설 토토 '((0,0), (2,2))' / Point '(2.0,0)' |
# | 교차점의 포인트 또는 상자 | 사설 토토 '((1, -1), (-1,1))' # 사설 토토 '((1,1), (-2, -2))' |
# | 경로 또는 다각형의 점수 | # path '((1,0), (0,1), (-1,0))' |
@-@ | 길이 또는 둘레 | @-@ path '((0,0), (1,0))' |
@@ | 센터 | @@ Circle '((0,0), 10)' |
## | 두 번째 피연산자에서 첫 번째 피연산자에 가장 가까운 지점 | 포인트 '(0,0)'## lseg '((2,0), (0,2))' |
<--> | 사이의 거리 | Circle '((0,0), 1)'<-> Circle '((5,0), 1)' ' |
&& | 오버랩? (공통점이 사실입니다.) | 사설 토토 '((0,0), (1,1))'&& 사설 토토 '((0,0), (2,2))' |
<< | 엄격하게 남은? | Circle '((0,0), 1)'<< circle '((5,0), 1)' |
엄격하게 맞습니까? | Circle '((5,0), 1)'>> Circle '((0,0), 1)' ' | |
&< | 오른쪽으로 확장되지 않습니까? | 사설 토토 '((0,0), (1,1))'& <사설 토토 '((0,0), (2,2))' |
& | 왼쪽으로 확장되지 않습니까? | 사설 토토 '((0,0), (3,3))'&> 사설 토토 '((0,0), (2,2))' |
<< | | 엄격하게 아래에 있습니까? | 사설 토토 '((0,0), (3,3))'<< | 사설 토토 '((3,4), (5,5))' |
| >> | 엄격하게 위에 있습니까? | box '((3,4), (5,5))'| >> 사설 토토 '((0,0), (3,3))' |
& <| | 위에 확장되지 않습니까? | 사설 토토 '((0,0), (1,1))'& <| 상자 '(0,0), (2,2))' |
| &> | 아래에 확장되지 않습니까? | 사설 토토 '((0,0), (3,3))'| &> 사설 토토 '((0,0), (2,2))' |
<^ | 아래입니다 (터치 허용)? | Circle '((0,0), 1)'<^ Circle '((0,5), 1)' |
>^ | Circle '((0,5), 1)'>^ Circle '((0,0), 1)' | |
?# | 교차? | lseg '((-1,0), (1,0))'?# box '((-2, -2), (2,2))' |
?- | 가로입니까? | ?- lseg '((-1,0), (1,0))' |
?- | 수평으로 정렬됩니까? | 포인트 '(1,0)'?- 포인트 '(0,0)' |
? | | 수직입니까? | ? | lseg '((-1,0), (1,0))' |
? | | 수직으로 정렬됩니까? | 포인트 '(0,1)'? | 포인트 '(0,0)' |
?-| | 수직인가? | lseg '((0,0), (0,1))'?-| lseg '((0,0), (1,0))' |
? || | 평행합니까? | lseg '((-1,0), (1,0))'? || lseg '((-1,2), (1,2))' |
@> | 포함? | Circle '((0,0), 2)' @> Point '(1,1)' |
<@ | 포함 또는 켜짐? | 포인트 '(1,1)'<@ circle '((0,0), 2)' |
~= | 동일? | 다각형 '((0,0), (1,1))'~ = 다각형 '((1,1), (0,0))' |
참고 :전PostgreSQL8.2, 격리 연산자@>and<@각각~and@. 이 이름은 여전히 사용할 수 있지만 더 이상 사용되지 않으며 결국 제거됩니다.
표 9-32. 기하학적 기능
기능 | 반환 유형 | 설명 | example |
---|---|---|---|
Area (개체) |
이중 정밀 | 지역 | Area (사설 토토 '(0,0), (1,1))') |
센터 (개체) |
포인트 | 센터 | 센터 (사설 토토 '(0,0), (1,2))') |
직경 (Circle) |
이중 정밀 | 원의 직경 | 직경 (원 '((0,0), 2.0)') |
높이 (사설 토토) |
이중 정밀 | 상자의 수직 크기 | 높이 (상자 '((0,0), (1,1))') |
isclosed (Path) |
부울 | 닫힌 경로? | isclosed (경로 '((0,0), (1,1), (2,0))') |
isopen (Path) |
부울 | 열린 경로? | Isopen (Path '[(0,0), (1,1), (2,0)]') |
길이 (개체) |
이중 정밀 | 길이 | 길이 (경로 '((-1,0), (1,0))') |
npoints (Path) |
int | 포인트 수 | npoints (경로 '[(0,0), (1,1), (2,0)]') |
npoints (Polygon) |
int | 포인트 수 | npoints (다각형 '((1,1), (0,0))') |
pclose (Path) |
Path | 폐쇄로 경로 변환 | pclose (Path '[(0,0), (1,1), (2,0)]') |
Popen (Path) |
Path | 개방으로 경로 변환 | Popen (Path '((0,0), (1,1), (2,0))') |
RADIUS (Circle) |
이중 정밀 | 원 반경 | RADIUS (Circle '((0,0), 2.0)') |
너비 (사설 토토) |
이중 정밀 | 상자의 수평 크기 | 너비 (사설 토토 '((0,0),))') |
표 9-33. 기하학적 유형 변환 기능
기능 | 반환 유형 | 설명 | example |
---|---|---|---|
사설 토토 (Circle) |
사설 토토 | 서클 to 사설 토토 | 사설 토토 (Circle '((0,0), 2.0)') |
사설 토토 (포인트) |
사설 토토 | 빈 상자를 가리키 | 사설 토토 (Point '(0,0)') |
사설 토토 (포인트, 포인트) |
사설 토토 | 상자에 가리 | 사설 토토 (Point '(0,0)', 포인트 '(1,1)') |
사설 토토 (Polygon) |
사설 토토 | POLYGON to 사설 토토 | 사설 토토 (다각형 '((0,0), (1,1), (2,0)) |
bound_사설 토토 (사설 토토, 사설 토토) |
사설 토토 | 경계 상자에 상자 | bound_사설 토토 (box '((0,0), (1,1))') ', 사설 토토'((3,3), (4,4)) ') |
Circle (사설 토토) |
Circle | 사설 토토 to Circle | Circle (사설 토토 '((0,0),))') |
Circle (포인트, 이중 정밀) |
Circle | 중심 및 반경으로 원 | Circle (Point '(0,0)', 2.0) |
Circle (Polygon) |
Circle | POLYGON to Circle | Circle (다각형 '((0,0), (1,1), (2,0)) |
line (포인트, 포인트) |
line | 선으로 가리 | line (point '(-1,0)', 포인트 '(1,0)') |
lseg (사설 토토) |
lseg | 선 세그먼트 대각선 대각선 | lseg (box '((-1,0), (1,0))') |
lseg (포인트, 포인트) |
lseg | 라인 세그먼트를 가리 | lseg (포인트 '(-1,0)', 포인트 '(1,0)') |
Path (Polygon) |
Path | POLY to PATH | Path (Polygon '((0,0), (1,1), (2,0))') |
포인트 (이중 정밀, 이중 정밀) |
포인트 | 건설 지점 | 포인트 (23.4, -44.5) |
포인트 (사설 토토) |
포인트 | 상자의 중심 | Point (사설 토토 '((-1,0),))') |
포인트 (Circle) |
포인트 | 원의 중심 | 포인트 (원 '(0,0), 2.0)') |
포인트 (lseg) |
포인트 | 라인 세그먼트의 중심 | Point (LSEG '((-1,0), (1,0))') |
포인트 (Polygon) |
포인트 | 다각형의 중심 | 포인트 (다각형 '((0,0), (1,1), (2,0)) |
다각형 (사설 토토) |
Polygon | 상자에서 4 점 다각형 | Polygon (사설 토토 '((0,0), (1,1))) |
다각형 (Circle) |
Polygon | 12 점 다각형으로 원 | 다각형 (원 '(0,0), 2.0)') |
다각형 (NPTS, Circle) |
Polygon | 서클 toNPTS-Point Polygon | Polygon (12, Circle '((0,0), 2.0)') |
다각형 (Path) |
Polygon | 다각형으로가는 길 | 다각형 (Path '((0,0), (1,1), (2,0))') |
A의 두 구성 요소 번호에 액세스 할 수 있습니다포인트요점이 인덱스 0과 1이있는 배열 인 것처럼. 예를 들어, ifT.Pis포인트칼럼t에서 p [0]을 선택하십시오x 좌표를 검색하고업데이트 t 세트 p [1] = ... ...y 좌표를 변경합니다. 같은 방식으로 유형의 값사설 토토또는lseg두 배열로 취급 될 수 있습니다포인트값.
the지역
함수는 유형에 대해 작동합니다사설 토토, Circle및Path. 그만큼지역
함수는에서만 작동합니다Path데이터 유형의 포인트 인 경우Path상영되지 않습니다. 예를 들어,Path '((0,0), (0,1), (2,1), (2,2), (1,2), (1,0), (0,0))':: path작동하지 않습니다. 그러나 다음은 시각적으로 동일합니다Path '((0,0), (0,1), (1,1), (1,2), (2,2), (2,1), (1,1), (1,0), (0,0))':: PATH작동합니다. 교차와 비 연락의 개념 인 경우Path혼란스럽고, 위의 두 가지를 모두 그리십시오PathS와 함께 그래프 용지에 나란히.
이전 | 롤 토토 : 문서 : 9.5 : 롤 토토 9.5.25 문서화 | 다음 |
ENUM 지원 기능 | PostgreSQL : 문서 : 9.5 : 젠 토토 및 연산자 | 네트워크 주소 기능 및 연산자 |