mysql gis基本使用

# 插入空間數據
INSERT INTO `t_pot` VALUES ('1', '北京', POINT(116.401394,39.916042));
INSERT INTO `t_pot` VALUES ('2', '廣州', ST_GEOMFROMTEXT('POINT(113.295701 23.008163)'));

#查詢
SELECT pot FROM t_pot
SELECT ST_ASTEXT(pot) FROM t_pot

# ST_Distance_Sphere 兩點的直線距離:米
SELECT ST_Distance_Sphere(POINT(113.950339,22.54387),POINT(113.295701,23.008163))

# st_distance返回的距離不是米
SELECT st_distance (POINT (1, 1),POINT(2,2) ) * 111195 

# 添加空間索引
ALTER TABLE t_pot ADD SPATIAL INDEX(pot);

# 文本轉化爲空間數據
SELECT ST_GEOMFROMTEXT("POINT(1 2)")
# 空間數據字符串化
SELECT ST_ASTEXT(POINT(1,2))
SELECT ST_ASTEXT(ST_GEOMFROMTEXT("POINT(1 2)"))

# 經緯度轉geoHash
SELECT st_geohash(POINT(113.295701,23.008163),8)
相關文章
相關標籤/搜索