当前位置:首页 » 编程语言 » sql经纬度距离

sql经纬度距离

发布时间: 2022-09-11 10:24:12

Ⅰ 怎么样用my sql计算5公里内的经纬度

这个有点难了。你看下 这篇帖子
http://bbs.csdn.net/topics/392218241

Ⅱ 经纬度与距离的换算

经纬度与距离的换算有以下两种方法:

1、二维转换

二维转换方法是将平面坐标(东坐标和北坐标)从一个坐标系统转换到另一个坐标系统。在转换时不计算高程参数。该转换方法需要确定4个参数(2个向东和向北的平移参数,1个旋转参数和1个比例因子)。如果要保持GPS测量结果独立并且有地方地图投影的信息,那么采用三维转换方法最合适。

2、三维转换

该方法基本操作步骤是利用公共点,也就是同时具有WGS84直角坐标和地方坐标的直角坐标的点位,一般需要3个以上重合点,通过布尔莎模型(或其他模型)进行计算,得到从一个系统转换到另一个系统中的平移参数、旋转参数和比例因子。

坐标转换分类

1、大地坐标(BLH)对平面直角坐标(XYZ)

常规的转换应先确定转换参数,即椭球参数、分带标准(3度,6度)和中央子午线的经度。椭球参数就是指平面直角坐标系采用什么样的椭球基准,对应有不同的长短轴及扁率。画到直角坐标系可以写为(x+z*acosθ,y+z*asinθ)a,θ为参数。

2、北京54全国80及WGS84坐标系的相互转换

一种国际上采用的地心坐标系。坐标原点为地球质心,其地心空间直角坐标系的Z轴指向BIH (国际时间)1984.O定义的协议地球极(CTP)方向,X轴指向BIH 1984.0的零子午面和CTP赤道的交点,Y轴与Z轴、X轴垂直构成右手坐标系,称为1984年世界大地坐标系统。

3、任意两空间坐标系的转换

由于测量坐标系和施工坐标系采用不同的标准,要进行精确转换,必须知道至少3个重合点(即为在两坐标系中坐标均为已知的点。采用布尔莎模型进行求解。

Ⅲ sql (mysql)实现查询某一个经纬度周围500米距离的餐馆,数据库存放所有餐馆的经纬度。

mysql两点间距,你也自己弄成函数

公式如下,单位米:
第一点经纬度: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
ORDER BY juli DESC
LIMIT 316

Ⅳ sql语句怎么写算坐标经纬度之间的距离

declare @x1 float
declare @x2 float
declare @y1 float
declare @y2 float
set @x1 = 5
set @x2 = 10
set @y1 = 5
set @y2 = 10
select power(power((@x1-@x2),2)+power((@y1-@y2),2),0.5)

Ⅳ sql语句怎么写算坐标经纬度之间的距离我是mysql数据库。 请详细点!谢谢!

给大家一条语句能执行的地方
SELECT id, ( 6371* acos( cos( radians(37) ) * cos( radians( lat ) ) * cos( radians( lng ) - radians(-122) ) + sin( radians(37) ) * sin( radians( lat ) ) ) ) AS distance FROM markers HAVING distance < 25 ORDER BY id LIMIT 20 数据库中查找 距离 37,-122 距离 小于25公里的 经纬度
以前看GOOGLE 地图 API 开发时候的一篇文章里面有 给分 给分

Ⅵ 怎样计算两个经纬度之间的距离 百度百科

地球赤道上环绕地球一周走一圈共 40075.04公里,而一圈分成360°,每1°(度)有60'。每一度一秒在赤道上的长度计算如下:

40075.04km/360°=111.31955km

111.31955km/60'=1.8553258km=1855.3m

每一分又有60秒,每一秒就代表 1855.3m/60=30.92m,任意两点距离计算公式为:

d=111.12cos{1/[sinΦAsinΦB十 cosΦAcosΦBcos(λB-λA)]}(A点经度,纬度分别为λA和ΦA,B点的经度、纬度分别为λB和ΦB,d为距离)。

地球上所有地方的纬度一分的距离都是约等于1.86公里,也就是一度等于1.86*60=111公里。不同纬度处的经度线上的一分的实际长度是不同的,219国道基本在东经29-38度之间,29度处的一分经线长约1.63公里,38度处的一分经线长约1.47公里。


(6)sql经纬度距离扩展阅读:

在地球仪上,由经线和纬线就组成了经纬网;如果把经纬网地球仪展开,就形成了一幅平面的地图。确定位置,在航空、航天、航海以及气象等方面都有作用。“船在海上遇到危险时,如何去营救”等等,都要用到经纬网地图。

经度 :为了区分地球上的每一条经线,人们给经线标注了度数,这就是经度。经度每15度1个时区。 实际上经度是两条经线所在平面之间的夹角。国际上规定,把通过英国首都伦敦格林威治天文台原址的那一条经线定为0°经线,也叫本初子午线。

从0°经线算起,向东、向西各分作180°,以东的180°属于东经,习惯上用“E”作代号,以西的180°属于西经,习惯上用“W”作代号。东经180°和西经的180°重合在一条经线上,那就是东西180°经线。纬度:从赤道向北量度为“北纬”(N);向南量度为“南纬”(S)。

在地图上判读经度时应注意:从西向东,经度的度数由小到大为东经度;从西向东,经度的度数由大到小,为西经度;除0°和180°经线外,其余经线都能准确区分是东经度还是西经度

Ⅶ 如何计算经纬度之间的距离

计算经纬度之间的距离方法如下:

计算地球上经纬度之间的距离d,已知地球上两点的经度、纬度:(X1,Y1), (X2,Y2),其中X1,X2为经度,Y1,Y2为纬度;

视计算程序需要转化为弧度(*3.1415926/180)地球半径为R=6371.0 km,则两点距离d=R*arcos[cos(Y1)*cos(Y2)*cos(X1-X2)+sin(Y1)*sin(Y2)]。

假设在中国某地,杆影最短时是中午13点20分,且杆长与影长之比为1,则可知该地是北纬45°(tgα=1),东经100°(从120°里1小时减15°,4分钟减1°)杆长与影长之比需查表求α。再算两至日经度的算法不变 纬度在北半球冬至α+23.5°,夏至α-23.5°在任意一天加减修正值即可。

(7)sql经纬度距离扩展阅读

经纬分度:

经度分为360度,每15度1个时区,其中0度的叫本初子午线,是第一个进入新一天的地方,然后向西每过1个时区就相差1小时。例如是早上5点,那么向西一个时区就是早上4点,再过1个时区就是早上3点,依此类推,向东则相反,一直到本初子午线。

纬度赤道的纬度为0°,将行星平分为南半球和北半球。纬度是指某点与地球球心的连线和地球赤道面所成的线面角,其数值在0至90度之间。位于赤道以北的点的纬度叫北纬,记为N,位于赤道以南的点的纬度称南纬,记为S。

纬度数值在0至30度之间的地区称为低纬地区,纬度数值在30至60度之间的地区称为中纬地区,纬度数值在60至90度之间的地区称为高纬地区。

Ⅷ oracle 根据已知的点的经纬度查询数据中距离该点500米的经纬度点,用sql怎么查呢

猜猜你的数据库列大致的格式为:经度,纬度,餐厅。 。 。 估计经纬度应该有精确的控制,你可以根据需要设置查询 1。矩形(简单):减去经度,纬度和一个固定值的减法运算的一个固定值,条件是在这个范围内 2设置。圆(复杂):经度和平方和的平方根的纬度,条件设置 在此范围内的数据库的估计要大,所以输出音量加一个限制是必要 SQL,甲骨文 SELECT TOP 10 *从'表名,其中
选择*从

限M,N,其中
>从一开始就M,取n个

Ⅸ sql (mysql)怎么实现查询某一个经纬度周围500米距离的餐馆,数据库存放所有餐馆的经纬度

回答的有点晚,正好我做到相关的项目了,希望能帮到其他人.

餐馆申请时候通过填写的地址取得经纬度存入数据库,下面是查询某个经纬度附近500米的

$user_lat='41.749034'; //传过来的纬度
$user_lng='123.46017';//传过来的经度
$store_mod=db("store"); //数据库
$storelist=$store_mod->query("SELECT
*,ROUND(6378.138*2*ASIN(SQRT(POW(SIN((".$user_lat."*PI()/180-【store_latitude】*PI()/180)/2),2)+COS(".$user_lat."*PI()/180)*COS(【store_latitude】*PI()/180)*POW(SIN((".$user_lng."*PI()/180-【store_longitude】*PI()/180)/2),2)))*1000)
AS distance FROM store HAVING 【搜索条件如 state=1】 distance<【周围距离多少米 如
500】 ORDER BY distance ASC");
var_mp($storelist);
【】sql语句中括号的store_latitude,store_longitude为你数据库存的商家经纬度的字段名,其余的为注释

Ⅹ sql怎么将一系列点经纬度坐标匹配到某市

ORACLE获取数据,根据定位的数据,计算用户的经纬度。
根据经纬度计算地球上两点之间的距离的SqlServer函数,单位是千米。mysql距离计算,单位m,以及排序lon经度,lat纬度,一般地图上显示的坐标顺序为,纬度在前(范围-90~90),经度在后(范围-180~180),首先新建一张表,里面包含经纬度。
结构化查询语言是高级的非过程化编程语言,允许用户在高层数据结构上工作。它不要求用户指定对数据的存放方法,也不需要用户了解具体的数据存放方式,所以具有完全不同底层结构的不同数据库系统,可以使用相同的结构化查询语言作为数据输入与管理的接口。结构化查询语言语句可以嵌套,这使它具有极大的灵活性和强大的功能。

热点内容
手机手势密码忘了怎么办 发布:2025-01-12 17:14:51 浏览:485
这手机配置有什么颜色的电视机 发布:2025-01-12 17:02:19 浏览:933
阁源码 发布:2025-01-12 16:48:08 浏览:131
组装机箱搭建服务器 发布:2025-01-12 16:46:58 浏览:512
风险资产配置理论有哪些 发布:2025-01-12 16:46:13 浏览:982
小程序分销源码 发布:2025-01-12 16:42:41 浏览:48
linux查看系统硬件 发布:2025-01-12 16:34:26 浏览:969
安卓手机怎么设置独享标志 发布:2025-01-12 16:27:56 浏览:933
我的世界如何把材质包放进服务器 发布:2025-01-12 16:11:14 浏览:57
使用hmailserver搭建邮件服务器 发布:2025-01-12 16:05:43 浏览:810