主頁 > 知識庫 > 使用MySQL的geometry類型處理經(jīng)緯度距離問題的方法

使用MySQL的geometry類型處理經(jīng)緯度距離問題的方法

熱門標(biāo)簽:外呼系統(tǒng)防封號違法嗎 高德地圖標(biāo)注模式 電銷機器人針對的 高德地圖標(biāo)注中心個人注冊 400電話辦理都選易號網(wǎng) 寶應(yīng)電信400電話辦理費用 湘潭電銷機器人咨詢電話 外呼系統(tǒng)服務(wù) 如何在高德地圖標(biāo)注新地址

建表

CREATE TABLE `map` (
 `id` int(11) NOT NULL,
 `address` varchar(255) NOT NULL DEFAULT '',
 `location` geometry NOT NULL,
 PRIMARY KEY (`id`),
 SPATIAL KEY `idx_location` (`location`)
)

插入

INSERT INTO map (id, address, location) VALUES (1, 'somewhere', ST_GeomFromText('POINT(121.366961 31.190049)'));

注意必須使用 ST_GeomFromText 函數(shù),且 POINT() 里面是:經(jīng)度+空格+緯度

查詢

1. 查看經(jīng)緯度

SELECT address, ST_AsText(location) AS location FROM map;

2. 計算兩點之間的距離

SELECT ST_Distance_Sphere(POINT(121.590347, 31.388094),location) AS distant FROM map;

算出來的結(jié)果,單位是米

注意現(xiàn)在POINT()里面經(jīng)緯度之間是逗號分隔的

3. 查詢距離小于1000m的地點,并由遠(yuǎn)及近排序

復(fù)制代碼 代碼如下:
SELECT id, address, ST_Distance_Sphere(POINT(121.590347, 31.388094),location) AS distant FROM map WHERE ST_Distance_Sphere(POINT(121.590347, 31.388094),location) 1000 ORDER BY distant;

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

您可能感興趣的文章:
  • mybatis學(xué)習(xí)之路mysql批量新增數(shù)據(jù)的方法
  • MySQL和Redis實現(xiàn)二級緩存的方法詳解
  • MySQL普通索引和唯一索引的深入講解
  • mysql binlog(二進(jìn)制日志)查看方法
  • Docker創(chuàng)建MySQL的講解
  • PHP date()格式MySQL中插入datetime方法
  • pymysql如何解決sql注入問題深入講解
  • mysql導(dǎo)出表的字段和相關(guān)屬性的步驟方法
  • MySQL線程處于Opening tables的問題解決方法
  • MySQL limit性能分析與優(yōu)化

標(biāo)簽:蘭州 宿遷 佛山 黃山 賀州 南充 馬鞍山 黔南

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《使用MySQL的geometry類型處理經(jīng)緯度距離問題的方法》,本文關(guān)鍵詞  使用,MySQL,的,geometry,類型,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《使用MySQL的geometry類型處理經(jīng)緯度距離問題的方法》相關(guān)的同類信息!
  • 本頁收集關(guān)于使用MySQL的geometry類型處理經(jīng)緯度距離問題的方法的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章