제목

PostGIS_DropBBox — 도형으로부터 경계 상자 캐시를 삭제합니다.

요약

geometry PostGIS_DropBBox(geometry geomA);

설명

도형으로부터 경계 상자 캐시를 삭제합니다. 이렇게 하면 도형 용량이 줄어들지만, 경계 상자 기반 쿼리는 느려집니다. 오류가 발생한 경계 상자를 삭제하는 데에도 이 함수를 이용합니다. 경계 상자 캐시에 오류가 발생했다는 숨길 수 없는 증거는, 사용자가 ST_Intersects 및 다른 관계성 쿼리를 실행했을 때 당연히 참을 반환해야 할 도형들을 배제하는 경우입니다.

[참고]

경계 상자는 도형에 자동적으로 추가되어 쿼리의 속도를 향상시키기 때문에 일반적으로는 이 함수가 필요하지 않습니다. 생성된 경계 상자에 어떤 이유로든 오류가 발생했거나, 또는 경계 상자가 없는 구버전 도형을 사용하는 경우, 옛 경계 상자를 삭제하고 다시 추가해야 합니다. 8.3에서 8.3.6 버전 사이에서, 도형을 변경했을 때 경계 상자 캐시를 항상 재계산하지 않거나 덤프/리로드 작업 없이 새로운 버전으로 업그레이드시 이미 오류가 발생한 경계 상자를 수정하지 못 하는 등 이런 종류의 오류 발생이 관찰됐습니다. 따라서 다음 쿼리를 통해 오류를 직접 수정하고 경계 상자를 다시 추가하거나, 또는 덤프/리로드 작업을 할 수 있습니다.

This method supports Circular Strings and Curves.

예시

This example drops cached bounding boxes where the stored box is wrong. Applying Box2D to ST_AsBinary forces a fresh box calculation, while Box2D on the table geometry reads the cached box.

Code
UPDATE sometable
SET geom =  PostGIS_DropBBox(geom)
WHERE Not (Box2D(ST_AsBinary(geom)) = Box2D(geom));
래스터 출력
UPDATE ...

After dropping corrupt cached boxes, re-add them where needed.

Code
UPDATE sometable
SET geom =  PostGIS_AddBBox(geom)
WHERE Not PostGIS_HasBBOX(geom);
래스터 출력
UPDATE ...