多邊形表示方式:geom (lng lat, lng lat)
多邊形向外等距擴展50m 0.0005表示50
SELECT
ST_AsText(
st_buffer (
'POLYGON((' || A .WGS84 || '))',
0.0005
)),a.id
FROM
hospital_area_new_result_id A
以經緯度一點畫半徑爲50m的圓
SELECT
ST_AsText(
st_buffer (
'POINT('|| b.longitude || ' ' || b.latitude ||')',
0.0005
)),a.id
FROM
hospital_area_new_result_id A
判斷經緯度點是否在多邊形內
SELECT
ST_Contains (
ST_Transform (
st_geometryfromtext (
'POLYGON((' || A .WGS84 || '))',
4326
),
4527
),
ST_Transform (
st_geometryfromtext (
'POINT(' || b.longitude || ' ' || b.latitude || ')',
4326
),
4527
)
)
FROM
hospital_area_new_result_id_center A ,food_hospital_table_20191212 b
點是否在指定半徑的圓內
SELECT
ST_DWithin (
ST_Transform (
st_geometryfromtext (
--圓心
'POINT(113 30)',
4326
),
4527
),
ST_Transform (
st_geometryfromtext (
--點
'POINT(116.4680989087 39.9486998528)',
4326
),
4527
),
--半徑
500
)
使用圖層展示
SELECT
ST_AsText ('POLYGON((' || "WGS84" || '))')
FROM
reptile
求兩個多邊形相交的區域面積
SELECT
ST_Area (
ST_AsText (
ST_Intersection (
ST_Transform (
st_geometryfromtext (
'POLYGON((' || A ."WGS84" || '))',
4326
),
4527
),
ST_Transform (
st_geometryfromtext (
'POLYGON((' || b."WGS84" || '))',
4326
),
4527
)
)
)
),
A ."cgi"
FROM
area_relation_scenes A,
hospital_table b
LIMIT 100
求多邊形的面積
SELECT
ST_Area (
ST_AsText (
ST_Transform (
st_geometryfromtext (
'POLYGON((' || wgs84 || '))',
4326
),
4527
)
)
)
FROM
hospital_area_new_result_id
求多邊形的中心位置SELECT
st_astext (
ST_Centroid ('POLYGON((' || wgs84 || '))')
)
FROM
hospital_area_new_result_id