zoukankan      html  css  js  c++  java
  • MySQL通过POIN数据类型查询指定范围内数据

    情况一:

      数据库:只有point类型的location字段

      实体类:有经纬度字段(double)、originLoction字段(存放string类型的数据库location字段:POINT(123.462202 41.804471)     )

     单位:km

    查询方圆100千米以内的数据..

    SELECT
      *,
      AsText(location) as originLoction,
      (st_distance(location, point(116.397915,39.908946))*111) AS distance
    FROM
      oc_district
    HAVING
      distance<100
    ORDER BY
      distance limit 100;

    情况二:

      数据库:有经度纬度字段,但是没有point字段

      实体类:有经纬度字段(double)、originLoction字段(存放string类型的数据库location字段:POINT(123.462202 41.804471)     )

    以米m为单位

    查询方圆5000m以内的数据

    SELECT

      *,

      (st_distance (point (lng,lat),point (116.3424590000,40.0497810000))*111195/1000 ) as juli

    FROM

      oc_district

    WHERE

      juli <=5000

    ORDER BY

       juli ASC

  • 相关阅读:
    DAY10-MYSQL表操作
    DAY10-MYSQL完整性约束
    DAY10-MYSQL数据类型
    DAY10-MYSQL存储引擎
    DAY10-MYSQL库操作
    017.2 基本数据类型对象包装类
    017.1 stringBuffer
    016.2 String
    16.1 eclipse设置
    015.5线程常见用法(面试题)
  • 原文地址:https://www.cnblogs.com/Soy-technology/p/10981124.html
Copyright © 2011-2022 走看看