1. #java的Utils
    public class DistanceUtil {
  2.  
  3. // 地球平均半径
  4. private static final double EARTH_RADIUS = 6378137;
  5.  
  6. // 把经纬度转为度(°)
  7. private static double rad(double d) {
  8. return d * Math.PI / 180.0;
  9. }
  10.  
  11. /**
  12. * 根据两点间经纬度坐标(double值),计算两点间距离,单位:千米
  13. * @author ershuai
  14. * @param lng1
  15. * @param lat1
  16. * @param lng2
  17. * @param lat2
  18. * @return
  19. */
  20. public static double getDistance(double lng1, double lat1, double lng2, double lat2) {
  21. double radLat1 = rad(lat1);
  22. double radLat2 = rad(lat2);
  23. double a = radLat1 - radLat2;
  24. double b = rad(lng1) - rad(lng2);
  25. double s = 2 * Math.asin(Math.sqrt(Math.pow(Math.sin(a / 2), 2) + Math.cos(radLat1) * Math.cos(radLat2) * Math.pow(Math.sin(b / 2), 2)));
  26. s = s * EARTH_RADIUS;
  27. s = s / 1000;
  28. DecimalFormat df = new DecimalFormat("#.00");
  29. s = Double.parseDouble(df.format(s));
  30. return s;
  31. }
  32.  
  33. public static void main(String[] args) {
  34. double distance1 = getDistance(104.046115, 30.6030110000, 104.074666, 30.611842);
  35. System.out.println("Distance is: " + distance1 + " km");
  36. }
  37. }
  38.  
  39. #SQL
  40.  
  41. SELECT
  42. es_name,
  43. es_lon,
  44. es_lat,
  45. ROUND(
  46. 6378.138 * 2 * ASIN(
  47. SQRT(
  48. POW(
  49. SIN(
  50. (
  51. 30.611842 * PI() / 180 - es_lat * PI() / 180
  52. ) / 2
  53. ),
  54. 2
  55. ) + COS(30.611842 * PI() / 180) * COS(es_lat * PI() / 180) * POW(
  56. SIN(
  57. (
  58. 104.074666 * PI() / 180 - es_lon * PI() / 180
  59. ) / 2
  60. ),
  61. 2
  62. )
  63. )
  64. ) * 1000
  65. ) AS distance_um
  66. FROM
  67. c_ershuai
  68. ORDER BY
  69. distance_um ASC

  转自:https://www.cnblogs.com/dcxmaozi/p/6921407.html

经纬度计算两点间的距离,根据距离排序SQL的更多相关文章

  1. TSQL 根据经纬度计算两点间的距离;返回米(m)

    -- ============================================= -- Author:Forrest -- Create date: 2013-07-16 -- Des ...

  2. php根据地球上任意两点的经纬度计算两点间的距离 原理

    地球是一个近乎标准的椭球体,它的赤道半径为6378.140千米,极半径为6356.755千米,平均半径6371.004千米.如果我们假设地球是一个完美的球体,那么它的半径就是地球的平均半径,记为R.如 ...

  3. 获取经纬度之间两点间真实距离(适用于GoogleMap,BaiduMap,Amap等)

    如何获取经纬度之间两点间真实距离(适用于GoogleMap,BaiduMap,Amap等)  目标:使用百度定位sdk开发实时移动距离计算功能,根据经纬度的定位,计算行驶公里数并实时刷新界面显示.大家 ...

  4. sql server2008根据经纬度计算两点之间的距离

    --通过经纬度计算两点之间的距离 create FUNCTION [dbo].[fnGetDistanceNew] --LatBegin 开始经度 --LngBegin 开始维度 --29.49029 ...

  5. HDOJ2001计算两点间的距离

    计算两点间的距离 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Su ...

  6. 计算两点间的距离,hdu-2001

    计算两点间的距离 Problem Description 输入两点坐标(X1,Y1),(X2,Y2),计算并输出两点间的距离.   Input 输入数据有多组,每组占一行,由4个实数组成,分别表示x1 ...

  7. hdu2001 计算两点间的距离【C++】

    计算两点间的距离 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Su ...

  8. 转:Math: Math.atan() 与 Math.atan2() 计算两点间连线的夹角

    我们可以使用正切操作将角度转变为斜率,那么怎样利用斜率来转换为角度呢?可以利用斜率的反正切函数将他转换为相应的角度.as中有两个函数可以计算反正切,我们来看一下. 1.Math.atan() Math ...

  9. js根据经纬度计算两点距离

    js版-胡老师 google.maps.LatLng.prototype.distanceFrom = function(latlng) {    var lat = [this.lat(), lat ...

随机推荐

  1. Spring JDBC数据库开发

    针对数据库操作,Spring框架提供了JdbcTemplate类. 1.Spring JDBC的配置 创建配置文件applicationContext.xml,添加如下代码: <!--配置数据源 ...

  2. 在IIS6,7中部署ASP.NET网站

    查看web.config文件 ASP.NET网站与一般的桌面程序不同,不是拷贝过来就能运行的(数据库连接除外). 要想运行它,通常需要一些配置过程.但是,我们到底需要配置什么呢?答案是:查看web.c ...

  3. 国外物联网平台初探(二) ——微软Azure IoT

    平台定位 连接设备.其它 M2M 资产和人员,以便在业务和操作中更好地利用数据. 连接 IoT 设备 将所有设备连接到云,从这些设备接收大规模数据,以及管理这些设备的授权和限制. 在将设备连接到云和处 ...

  4. ES Segment Memory——本质上就是segment中加到内存的FST数据,因此segment越多,该内存越大

    ElasticSearch优化系列四:ES的heap是如何被瓜分掉的 转自:https://www.jianshu.com/p/f41b706db6c7 以下分别解读几个我知道的内存消耗大户: Seg ...

  5. JavaScript Simple

    ylbtech-JavaScript: 1.返回顶部 1.   2. 2.返回顶部   3.返回顶部   4.返回顶部   5.返回顶部     6.返回顶部   作者:ylbtech出处:http: ...

  6. linux 在线实验

    https://www.shiyanlou.com/courses/running/2

  7. POJ 2406 KMP next数组的应用

    题意:让你找最小重复串的个数 加深KMP中对next数组的理解 #include <cstdio> #include <cstring> using namespace std ...

  8. Codeforces Round #198 (Div. 2)C,D题解

    接着是C,D的题解 C. Tourist Problem Iahub is a big fan of tourists. He wants to become a tourist himself, s ...

  9. WPF使用Winform PDFView控件

    最近开发wpf项目中有一个模块需要显示PDF文件内容.由于WPF本身没有PDF加载控件(似乎有收费的我查到过类似的资料.如果有新的pdf控件也请通知我一下谢谢). 项目使用之前也是从网上获取的资料,因 ...

  10. BZOJ4517: [Sdoi2016]排列计数(组合数+错位排列)

    Time Limit: 60 Sec  Memory Limit: 128 MBSubmit: 1626  Solved: 994[Submit][Status][Discuss] Descripti ...