위도 값을 GEOGRAPHY 데이터 유형으로 저장 한 후 개별 위도 값을 어떻게 검색합니까?
시도 실패 :
SELECT id, geog, ST_X(geog), ST_Y(geog) FROM locations;
오류:
No function matches the given name and argument types. You might need to add explicit type casts.
답변
ST_X (포인트) 기능은 (지금과 같이) 형상을 지원합니다.
한 가지 해결 방법은을 사용하여 geog을 geom 으로 캐스팅 하는 것 ::geometry
입니다.
쿼리가 다음과 같아야합니다.
SELECT id, geog, ST_X(geog::geometry), ST_Y(geog::geometry) FROM locations;
그리고 그것은 지오그 (geog)이기 때문에 SRID는 4326 일 것 입니다.
또한 여기 geog 유형에 대한 좋은 소스.
답변
캐스트 불필요
이 쿼리를 사용해보십시오.
SELECT ST_XMax(geog), ST_YMax(geog), ST_AsEWKT(geog)
FROM locations LIMIT 10;
그것은 나를 위해 작동합니다.
답변
이 쿼리를 사용해보십시오.
SELECT X(the_geom), Y(the_geom), ST_AsEWKT(the_geom)
FROM locations LIMIT 10;
나는 그것이 당신을 돕기를 바랍니다