PostGIS
Query
前提
下記のテー ブルがあると想定。
CREATE TABLE posts
(
id SERIAL PRIMARY KEY,
geom GEOMETRY(POINT),
);
ST_AsText
テキストで出力する。
ST_AsText(geom) -- => text型 'POINT(139.763995 35.681235)'
ST_X, ST_Y
座標値を数値で得る
ST_X(geom) -- => double型 139.763995
ST_Y(geom)
ST_DWithin
指定したポイント(135 35)から 50km 以内のレコードを抽出する。第 3 引数を false にすることで、メートルでの指定ができる。
SELECT * FROM posts WHERE ST_DWithin(geom, ST_GeomFromText('POINT(135 35)'), 50000, true)