우선 아래 물음에 답해주신 여러분께 감사 드립니다~! 꾸벅..
point 좌표를 box로 바꿔서 수행하고 있습니다만 이번엔 지원하지 않는 연산자가 많아 애를 먹고 있습니다. 아뭏든 인덱스를 걸어 보았는데요.
잘 되서 즐겁습니다.^^;
다름이 아니오라
아래와 같은 질의를 postgresql질의로 바꾸려는데 생각처럼 쉽지 않네요..
not 연산자 때문인데...
우선 질의를 보면
Select * from addressinfo2 where (do = '경기도' and (not ((eminx >300000 and eminx <=505000) and (eminy >398000 and eminy <=500000)))
입니다.. 해석 해 보면 do 라는 필드는 경기도 이어야 하고 x는 300000에서 505000 까지 그리고 y는 398000 에서 500000까지 그 안에 들어 있지 않는 box 좌표를 검색하는 것입니다. 그런데 이걸 나름대로 바꿔 보니깐 not 때문에 문제가 됩니다.
사각형 영역안에 있지 않으려면 이라는 조건이 중요한 것인데...나름대로 적어보면
Select * from addressinfo2 where do='경기도' and xybox !@ ('(300000, 398000),(505000,500000)'::box);
가운데 연산자가 모가 들어가야 할지 모르겠네요..--; 답을 부탁 드립니다.
|