Mysql根据经纬度筛选数据
创建位置表,并且插入测试数据
/*
Navicat MySQL Data Transfer Source Server : localhost Source Server Version : 80011 Source Host : localhost:3306 Source Database : test Target Server Type : MYSQL Target Server Version : 80011 File Encoding : 65001 Date: 2018-11-07 16:58:27 */SET FOREIGN_KEY_CHECKS = 0;-- ------------------------------ Table structure for location-- ----------------------------DROP TABLEIF EXISTS `location`;CREATE TABLE `location` ( `id` INT (10) UNSIGNED NOT NULL AUTO_INCREMENT, `name` VARCHAR (50) NOT NULL, `longitude` DECIMAL (13, 10) NOT NULL, `latitude` DECIMAL (13, 10) NOT NULL, PRIMARY KEY (`id`), KEY `long_lat_index` (`longitude`, `latitude`)) ENGINE = INNODB AUTO_INCREMENT = 5 DEFAULT CHARSET = utf8;-- ------------------------------ Records of location-- ----------------------------INSERT INTO `location`VALUES ( '1', '广东省深圳市龙岗区坂田街道五和大道万科四季花城北区', '22.6265210000', '114.0606880000' );INSERT INTO `location`VALUES ( '2', '广东省深圳市龙华区民治(地铁站)', '22.6175280000', '114.0406460000' );INSERT INTO `location`VALUES ( '3', '广东省深圳市龙华区红山(地铁站)', '22.6218860000', '114.0234800000' );INSERT INTO `location`VALUES ( '4', '广东省深圳市南山区西丽街道沙河西路名典商旅酒店(深圳西丽店)', '22.5801670000', '113.9543000000' );#经度:22.626521
#纬度:114.060688#50KM范围SELECT *FROM ( SELECT *, sqrt( ( ( (22.626521 - longitude) * PI() * 12656 * cos( ((114.060688 + latitude) / 2) * PI() / 180 ) / 180 ) * ( (22.626521 - longitude) * PI() * 12656 * cos( ((114.060688 + latitude) / 2) * PI() / 180 ) / 180 ) ) + ( ( (114.060688 - latitude) * PI() * 12656 / 180 ) * ( (114.060688 - latitude) * PI() * 12656 / 180 ) ) ) AS lc FROM location ) locationWHERE lc < 50 ##距离小于50KMORDER BY ##距离小于排序 lc
Mysql根据经纬度筛选数据的更多相关文章
- 【mysql优化】大数据量分页优化
limit 翻页原理 limit offset,N, 当offset非常大时, 效率极低, 原因是mysql并不是跳过offset行,然后单取N行, 而是取offset+N行,返回放弃前offset行 ...
- php根据经纬度排序,根据经纬度筛选距离段
SQL 语句:select location.* from (select *,round(6378.138*2*asin(sqrt(pow(sin( (36.668530*pi()/180-px_l ...
- mysql 实现经纬度排序查找功能
需求如下: 商品有多个门店,用户使用App时需要查找附近门店的商品,商品要进行去重分页. 思路: 1.确认mysql自带经纬度查询函数可以使用. 2.该需求需要利用分组排序,取每个商品最近门店的商品i ...
- Mysql 计算地址经纬度距离实时位置
前言 最近在做项目时候,遇到一个这样子的需求, 点到卡包里面卡券使用使用,需要展示卡券使用附近门店, 思路 数据库地址表设计 通用的区域街道地址表tz_sys_area 字段名称 类型 备注 area ...
- .NET LINQ 筛选数据
筛选数据 筛选指将结果集限制为只包含那些满足指定条件的元素的操作. 它又称为选择. 方法 方法名 说明 C# 查询表达式语法 Visual Basic 查询表达式语法 更多信息 OfType ...
- OpenLayers添加点【php请求MySQL数据库返回GeoJSON数据】
php请求MySQL数据库返回GeoJSON数据的实现方法请参见: http://www.cnblogs.com/marost/p/6234514.html OpenLayers[v3.19.1-di ...
- 基于内存,redis,mysql的高速游戏数据服务器设计架构
转载请注明出处,欢迎大家批评指正 1.数据服务器详细设计 数据服务器在设计上采用三个层次的数据同步,实现玩家数据的高速获取和修改. 数据层次上分为:内存数据,redis数据,mysql数据 设计目的: ...
- easyui 筛选数据及仅允许选择数据
先说需求,本地已缓存数据源,用户输入拼音码或编号,筛选数据作为新的数据源,然后通过键盘选择. 再说问题,easyui combogrid控件,在mode为local,也就是将数据源缓存在本地的情况下, ...
- EF 连接MySQL 数据库 保存中文数据后乱码问题
EF 连接MySQL 数据库 保存中文数据后乱码问题 采用Code First 生成的数据库,MySQL数据库中,生成的表的编码格式为***** 发现这个问题后,全部手动改成UTF8(图是另一个表的 ...
随机推荐
- “全栈2019”Java第二十三章:流程控制语句中决策语句switch上篇
难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...
- jqGrid-基础篇
jqGrid 是一个用来显示网格数据的jQuery插件,通过使用jqGrid可以轻松实现前端页面与后台数据的ajax异步通信. 一.jqGrid特性 基于jquery UI主题,开发者可以根据客户要 ...
- [BZOJ4530][Bjoi2014]大融合(LCT)
传送门 大佬们似乎都是用树剖+并查集优雅地A了此题 然后我太弱了,只能打打LCT的板子 虽然的确可以挺无脑的A掉…… 不过至少这题教了我该怎么维护LCT上虚子树的信息,具体看这里 首先,答案很明显是断 ...
- [Swift实际操作]八、实用进阶-(5)通过间接代理进行对象间的消息传递
本文将为你演示,如何通过简介代理的方式,进行对象间的消息传递在左侧的项目导航区,打开自定义视图的代码文件(CustomView.swift). import UIKit class CustomVie ...
- centos下部署NFS
一. NFS简介 NFS---Network File System:主要功能是通过网络让不同的linux主机系统间可以彼此共享文件和目录.NFS客户端可以通过挂载的方式将NFS服务器端共 ...
- c 调用 lua 向lua函数 传递table
参考 https://www.myvoipapp.com/blogs/yxh/2016/07/14/c%E5%90%91lua%E5%87%BD%E6%95%B0%E4%BC%A0%E9%80%92t ...
- 读《3M 利率分析新框架》
目录 读<3M 利率分析新框架> 前言 传统的利率研究框架 3M 利率研究新框架 Macro Monetary Macro Prudence 总结 参考文献 <3M 利率分析新框架& ...
- 一篇Java图片验证码生成的代码
package projectUtil; /** * @author tian * @date 2019/4/1015:58 */ import javax.imageio.ImageIO; impo ...
- Java - 自定义异常(尚学堂第六章异常机制作业判断三角形)
写一个方法void isTriangle(int a,int b,int c),判断三个参数是否能构成一个三角形, 如果不能则抛出异常IllegalArgumentException,显示异常信息 “ ...
- new Map的妙用
const actions = new Map([ [1, ['processing','IndexPage']], [2, ['fail','FailPage']], [3, ['fail','Fa ...