久久久青草青青亚洲国产免观|国产Av无码专区亚洲版|黄片大全入口|自拍偷拍鲁|桥矿影漂亮的老师

公司新聞

將想法與觀點,與您一起分享~

開發案例插畫 插畫-樹 插畫-樹

重慶網站建設mysql計算經緯度距離排序方法

潤雪科技 時間:2021-03-15 11:08 瀏覽量:2432

我們最近在開發一個交友聊天類的app,需要計算用戶與用戶之間的距離,然后通過距離來排序,距離排序還是比較簡單的,因為現在可以直接使用mysql來完成了。


在幾年前,我們也遇到過類似的需求,那時候我們是用的百度云的lbs來計算距離,所有的數據、經緯度都要傳到百度的lbs云上,讀取的時候也需要讀取百度的,然后在到字的系統里面來補充剩余的字段信息,相比起來就麻煩多了,下面就看重慶網站建設公司如何直接在mysql里面計算距離。


重慶網站建設mysql計算經緯度距離排序方法


1、數據表字段類型為 point,可以直接存經緯度數據,數據表如下:


2、sql如何寫point插入語句:

低于mysql8寫法:

INSERT INTO 表名 VALUES ( 其它字段,其它字段,GeomFromText('POINT(123.462202 41.804471)'),其它字段,其它字段)

mysql8版本寫法:

INSERT INTO 表名 VALUES ( 其它字段,其它字段,ST_GeomFromText('POINT(123.462202 41.804471)'),其它字段,其它字段)

區別在余函數加了個ST_,因為mysql8這個函數被重命名了


3、point字段更新語句

更新語句跟插入語句一樣的,就比較類似了

UPDATE 表名 SET 字段名=GeomFromText('POINT(116.427957 40.047081)') WHERE id = 1

mysql8版本寫法:

UPDATE 表名 SET 字段名=ST_GeomFromText('POINT(116.427957 40.047081)') WHERE id = 1


4、如何通過mysql直接計算距離進行排序

變量如下:

A=我的所在的經緯度,如106.565758,29.539989

B=計算的距離,單位公里,如計算10公里內的數據那么B就等于10


select 其它字段,st_distance(point(A),表中的經緯度字段名)*100 as distance from 表名 where st_distance(point(A),表中的經緯度字段名)*100 < B order by distance asc 




來源聲明:本文【重慶網站建設mysql計算經緯度距離排序方法】由潤雪科技編輯原創或采編整理,如需轉載請注明來自潤雪科技。以上內容部分(包含圖片、文字)來源于網絡,如有侵權,請及時與本站聯系。

TAG標簽:網站開發 網站設計

相關文章
  • 前端react項目使用prettier來格式化(美化)各種代碼

    前端react項目使用prettier來格式化(美化)各種代碼

    前端react項目使用prettier來格式化(美化)各種代碼,包括javascript、php、java、typesctip、css、less、json、sql等都可以美化

  • php用Mpdf將html文檔轉為pdf

    php用Mpdf將html文檔轉為pdf

    php將html文檔轉成pdf保存到服務器

  • php用libreoffice將ppt轉為pdf

    php用libreoffice將ppt轉為pdf

    1、先安裝libreoffice:yum install libreoffice;2、由于ppt中都是中文,執行命令轉ppt的時候中文可能亂碼,我的解決辦法是在liunx系統中安裝中文字體,把windows的字體直接全部拷貝到liunx服務器中,直接把所有字體都上傳到服務器

  • php利用imagick擴展將pdf導出成圖片

    php利用imagick擴展將pdf導出成圖片

    需要先安裝php的imagick擴展,兩種方式,第一種是使用php,第二種是使用命令執行;隨便用哪種執行需要修改nginx配置文件增加:proxy_read_timeout 600s;使其鏈接60秒后不斷,不然pdf一旦過大60秒無法完成工作就斷開鏈接了

  • apache配置轉發,如使用workerman 或 webman等框架的時候配合apache

    apache配置轉發,如使用workerman 或 webman等框架的時候配合apache

    在使用workerman 或 webman等框架開發應用的時候需要配合nginx 或 apache進行轉發,官網的文檔只有寫nginx,下面的apache的配置,前提是apche需要開啟這兩個模塊

  • 一個class類幾個函數即可調用各種微信支付場景

    一個class類幾個函數即可調用各種微信支付場景

    真在的只需要一個class類文件幾個函數就可以調用微信的所有支付,不管是微信公眾號、h5、app、小程序支付,加密方式都是一樣的,對比下微信的支付文檔,只需要修改第一步傳入的參數不同,下單地址不同,加密方式都是一樣的,所以只要看懂下面的第一個函數,將搞定微信的任何支付。

如果您感覺我們的案例非常不錯,請與我們取得聯系~
立即咨詢
獲取方案及報價 023-6288-5285
網站建設流程 需求溝通
網站建設流程 簽訂合同
網站建設流程 項目開發
網站建設流程 上線/運營維護

張經理

186-9655-6121

鄒經理

188-1980-6503

潤雪科技二維碼
電話咨詢 在線咨詢 微信咨詢