最後活躍 1756701004

修訂 427762542a7e744ad678d6004c94787eac4f6802

inValid Geometry 해결.md 原始檔案

postgresql의 ST_Intersects()를 사용중 아래와 같이 오류가 발생했다.

오류 발생: SQLSTATE = XX000, SQLERRM = GEOSIntersects: TopologyException: side location conflict at 298600.73221767566 264940.33694780665. This can occur if the input geometry is invalid.

유효하지않은 geom이 존재한다고 한다. ST_IsValid()함수를 이용하여 어떤놈들인지 찾아본다.

select pnu from lsmd_cont_ldreg where ST_IsValid(geom)

이놈들을 ST_MakeValid()이용해 유효한 geom으로 업데이트해준다. (단, geom이 없어질수도, 하나의pnu에 여러 geom이 생기거나 예기치 못한 방식으로 처리될 수 있으니 주의바람)

update lsmd_cont_ldreg
set geom = ST_MakeValid(geom)
where not ST_IsValid(geom)