文档章节

Mysql 拿指定经纬度与数据库多条经纬度进行距离计算

我是李达康
 我是李达康
发布于 2016/09/05 14:19
字数 198
阅读 51
收藏 1

公式如下,单位米: 第一点经纬度:lng1 lat1 第二点经纬度:lng2 lat2 round(6378.138*2*asin(sqrt(pow(sin((lat1*pi()/180-lat2*pi()/180)/2),2)+cos(lat1*pi()/180)*cos(lat2*pi()/180)*pow(sin( (lng1*pi()/180-lng2*pi()/180)/2),2)))*1000)

SELECT
	store_id,
	lng,
	lat,
	ROUND(
		6378.138 * 2 * ASIN(
			SQRT(
				POW(
					SIN(
						(
							22.299439 * PI() / 180 - lat * PI() / 180
						) / 2
					),
					2
				) + COS(22.299439 * PI() / 180) * COS(lat * PI() / 180) * POW(
					SIN(
						(
							114.173881 * PI() / 180 - lng * PI() / 180
						) / 2
					),
					2
				)
			)
		) * 1000
	) AS juli
FROM
	store_info
HAVING
	juli > 500
ORDER BY
	juli DESC
LIMIT 100

SELECT
    id,address,
    longitude,
    latitude,
    ROUND(
        6378.138 * 2 * ASIN(
            SQRT(
                POW(
                    SIN(
                        (
                            36.6528865730 * PI() / 180 - latitude * PI() / 180
                        ) / 2
                    ),
                    2
                ) + COS(36.6528865730 * PI() / 180) * COS(latitude * PI() / 180) * POW(
                    SIN(
                        (
                            117.0733427689 * PI() / 180 - longitude * PI() / 180
                        ) / 2
                    ),
                    2
                )
            )
        ) * 1000
    ) AS juli
FROM
    eleme_shops
ORDER BY
    juli

本文转载自:http://blog.csdn.net/daixinmei/article/details/43731791

共有 人打赏支持
我是李达康

我是李达康

粉丝 31
博文 73
码字总数 27332
作品 0
济南
程序员
私信 提问
结合MongoDB开发LBS应用

简介 随着近几年各类移动终端的迅速普及,基于地理位置的服务(LBS)和相关应用也越来越多,而支撑这些应用的最基础技术之一,就是基于地理位置信息的处理。我所在的项目也正从事相关系统的...

凯文加内特
2015/09/09
318
0
lbs中从库中查询某经纬度2KM范围内的数据

sql语句查询经纬度范围 指定一个经纬度,给定一个范围值(单位:千米),查出在经纬度周围这个范围内的数据。 经度:113.914619 纬度:22.50128 范围:2km longitude为数据表经度字段 latitude为数...

laserdance
2012/02/16
0
1
几个地理位置信息处理方案的对比和分析

对于任何LBS应用来说,让用户寻找周围的好友可能都是一个必不可少的功能,我们就以这个功能为例,来看看各种处理方案之间的差异和区别。 我们假设有如下功能需求: 显示我附近的人由近到远排...

javaer
2018/05/11
0
0
Coreseek Windows下安装调试

 由于项目需要全文检索,后面就去网上查了下资料,找到了Sphinx【中文是狮身人面像】这个全文检索引擎,听说挺好用的,不过没有中文分词。后面又去找了一下,找到了Coreseek,一款中文全文检...

技术小胖子
2017/11/10
0
0
Java,Mysql-根据一个给定经纬度的点,进行附近500米地点查询–合理利用算法

最近做一个项目:需要查询一个站点(已知该站点经纬度)500米范围内的其它站点。所以,我首先想到的是,对每条记录,去进行遍历,跟数据库中的每一个点进行距离计算,当距离小于500米时,认为...

风吹屁屁凉
2018/01/11
0
0

没有更多内容

加载失败,请刷新页面

加载更多

dockerfile 镜像构建(1)

通用dockerfile 利用已经编译好的.jar 来构建镜像。要构建的目录如下: [root@iZuf61quxhnlk9m2tkx16cZ demo_jar]# docker build -t demo:1 . 运行镜像: [root@iZuf61quxhnlk9m2tkx16cZ de...

Canaan_
59分钟前
2
0
Redis radix tree源码解析

Redis实现了不定长压缩前缀的radix tree,用在集群模式下存储slot对应的的所有key信息。本文将详述在Redis中如何实现radix tree。 核心数据结构 raxNode是radix tree的核心数据结构,其结构体...

阿里云云栖社区
今天
13
0
vue import 传入变量

在做动态添加component的时候,传入变量就会报错,出现以下错误信息: vue-router.esm.js?fe87:1921 Error: Cannot find module '@/components/index'. at eval (eval at ./src/components ......

朝如青丝暮成雪
今天
3
0
Flutter开发 Dio拦截器实现token验证过期的功能

前言: 之前分享过在Android中使用Retrofit实现token失效刷新的处理方案,现在Flutter项目也有“token验证过期”的需求,所以接下来我简单总结一下在Flutter项目中如何实现自动刷新token并重...

EmilyWu
今天
9
0
final Map可以修改内容,final 常量不能修改

1.final Map 可以put元素,但是不可以重新赋值 如: final Map map = new HashMap(); map = new HashMap();//不可以 因为栈中变量map引用地址不能修改 2.final str = “aa”; str = "bb";/......

qimh
今天
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部