文档章节

mysql 计算 给定座标 n米范围内的 公司地址

n
 nibilly
发布于 2016/10/08 10:38
字数 251
阅读 26
收藏 4

select * from (

SELECT id,title,addr,pointX,pointY,(2*ATAN2(SQRT(SIN((24.488935-pointY)*PI()/180/2)   
        *SIN((24.488935-pointY)*PI()/180/2)+   
        COS(pointY*PI()/180)*COS(24.488935*PI()/180)   
        *SIN((118.192988-pointX)*PI()/180/2)   
        *SIN((118.192988-pointX)*PI()/180/2)),   
        SQRT(1-SIN((24.488935-pointY)*PI()/180/2)   
        *SIN((24.488935-pointY)*PI()/180/2)   
        +COS(pointY*PI()/180)*COS(24.488935*PI()/180)   
        *SIN((118.192988-pointX)*PI()/180/2)   
        *SIN((118.192988-pointX)*PI()/180/2))))*6378140 juli
FROM jh_company

) a where a.juli < 5000 order by a.juli asc

 

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

#lat为纬度, lng为经度, 一定不要弄错

declare @lng1 float;

declare @lat1 float;

declare @lng2 float;

declare @lat2 float;

set @lng1=116.3899;

set @lat1=39.91578;

set @lng2=116.3904;

set @lat2=39.91576;  

select (2*ATAN2(SQRT(SIN((@lat1-@lat2)*PI()/180/2)  

        *SIN((@lat1-@lat2)*PI()/180/2)+  

        COS(@lat2*PI()/180)*COS(@lat1*PI()/180)  

        *SIN((@lng1-@lng2)*PI()/180/2)  

        *SIN((@lng1-@lng2)*PI()/180/2)),  

        SQRT(1-SIN((@lat1-@lat2)*PI()/180/2)  

        *SIN((@lat1-@lat2)*PI()/180/2)  

        +COS(@lat2*PI()/180)*COS(@lat1*PI()/180)  

        *SIN((@lng1-@lng2)*PI()/180/2)  

        *SIN((@lng1-@lng2)*PI()/180/2))))*6378140;

© 著作权归作者所有

共有 人打赏支持
n
粉丝 12
博文 179
码字总数 41779
作品 0
厦门
Redis新特性GEOHASH

一、简言 Redis 的 GEO 特性将在 Redis 3.2 版本释出, 这个功能可以将用户给定的地理位置信息储存起来, 并对这些信息进行操作 将指定的地理空间项目(纬度,经度,名称)添加到指定的键。数...

DBAspace
07/03
0
0
redis3.2新功能--GEO地理位置命令介绍

一、概述 redis3.2发布rc版本已经有一段时间了,估计RedisConf 2016左右,3.2版本就能release了。3.2版本中增加的最大功能就是对GEO(地理位置)的支持。说起redis的GEO特性,最大的贡献还是...

IT--小哥
07/19
0
0
redis 3.2 新功能 —— GEO 地理位置命令介绍

redis3.2发布rc版本已经有一段时间了,估计RedisConf 2016左右,3.2版本就能release了。3.2版本中增加的最大功能就是对GEO(地理位置)的支持。说起redis的GEO特性,最大的贡献还是咱们中国人...

两味真火
2016/09/18
6.1K
23
坐标系中找一个参考点某个范围内坐标点的问题

一个坐标系中有很多点(坐标),现给出一个参考点,找出参考点范围(xxx米,xxx公里)内的点。 1.现实生活中坐标就是指经度和纬度,每个单位之间距离可以量化(每个单位纬度距离≈111公里;每...

chorigin
08/07
0
0
甲骨文变身最大开源厂商 红帽反对

有报道称甲骨文目前是行业中最强大的开源厂商,但是这个话可不能传到红帽公司高管的耳朵里,因为他们认为甲骨文甚至都没有被称之为开源公司的资格。 在甲骨文收购Java, MySQL和OpenSolaris的...

老枪
2010/05/27
1K
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

JS三元运算示例

1. topFlag=topFlag ==0?1:0; 等于 if(topFlag=00){ topFlag=1; }else if(topFlag == 1){ topFlag=0; } 2. 5>3?alert('5大'):alert('3大'); 即 if(5>3){alert('5大')}else{alert('3大')}; 注......

森火
55分钟前
0
0
利用Slf4j的MDC跟踪方法调用链

why? 一个web项目通常提供很多URL访问地址, 项目一般都是分层处理,例如Controller——>Service——>DAO。 如果想根据日志查看用户一次请求都走了哪些方法(多数是查错误)。 如果系统是多人...

杨春炼
今天
5
0
Maven介绍及安装

Maven介绍及安装 以下内容是本人早期学习时的笔记,可能比较详实繁琐,现在复习一下Maven,顺便将内容抛出来,供大家一起学习进步。 一、Maven简介 Maven是Apache旗下的一款项目管理工具,是...

星汉
今天
0
0
小程序Aes解密

主要步骤: 1、下载AES源码(JS版) 2、在小程序中新建一个公共的文件夹,把AES源码拷贝进去(注意:需要暴露接口 module.exports = CryptoJS;) 3、添加一个用于加密解密的公共JS,可取名为...

Mr_Tea伯奕
今天
0
0
Go实现文件传输(基本传输可用)

发送端 package mainimport ("fmt""os""net""io")func SendFile(path string, connect net.Conn){file, oerr :=os.Open(path)if oerr !=nil{fmt.Println("Open", oerr)......

CHONGCHEN
今天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部