school 이라는 테이블의 공간데이터 중심점을 1m buffer하고 hospital 테이블의 geom 과 intersects 하는 쿼리를 알고싶습니다.
select st_intersects(st_buffer(st_centroid(a.geom),1),b.geom) from school as a, hospital as b 가 맞나요?
통상 이런 상황에서 쓰는 쿼리는
select a.name, b.name from school as a, hospital as b
where st_intersects(a.geom, b.geom)
형태로 쓰여요. 여기서 a.geom 중심점에서 버퍼 1m 라면, st_buffer(st_centroid(),1) 이 맞는데,
이렇게 쓰게 되면,
현실 세계 내에서는 자료가 없을 것 같습니다.
통상 현실적이라면, 학교의 중심점 기준으로 반경 1km 내 병원들을 찾아라 형태일거고, (st_dwithin)
이럴 경우 두 테이블의 자료가 많은 경우, 쿼리 비용이 상당할 것으로 예상됩니다.