CN103605775A - 一种查询周围地理位置信息的方法及装置 - Google Patents
一种查询周围地理位置信息的方法及装置 Download PDFInfo
- Publication number
- CN103605775A CN103605775A CN201310625985.2A CN201310625985A CN103605775A CN 103605775 A CN103605775 A CN 103605775A CN 201310625985 A CN201310625985 A CN 201310625985A CN 103605775 A CN103605775 A CN 103605775A
- Authority
- CN
- China
- Prior art keywords
- value
- coordinate
- database
- target string
- latitude
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/50—Information retrieval; Database structures therefor; File system structures therefor of still image data
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种查询周围地理位置信息的方法及装置,所述方法包括:获取用户输入的查询请求中的经度坐标值和纬度坐标值;将所述经度坐标值和纬度坐标值的各数值位,按照设定规则合并,成为目标字符串;将所述目标字符串与数据库中存储坐标点的字符串的对应数值位进行比较,以获得查询结果。本发明能够提高在数据库中查询周围地理位置信息的效率。
Description
技术领域
本发明涉及数据查询技术领域,尤其涉及一种查询周围地理位置信息的方法及装置。
背景技术
地理位置信息是用来表示地球上任意地点的信息,常见的表示方式为经纬度。经纬度是经度和纬度的合称,它是一种利用三维空间的球面来定义地球上的空间的球面坐标系统,能够表示地球上的任何一个位置。经度是地球上一个地点距离本初子午线以东或以西的度数。本初子午线的经度是0度,东经一般写为正数,西经一般写为负数。纬度是某点与地球球心的连线和地球赤道面所成的线面角,其数值在0到90度之间。位于赤道以北的点的纬度叫北纬,位于赤道以南的点的纬度叫南纬。北纬一般写为正数,南纬一般写为负数。比如X=-73,Y=40表示西经73度,北纬40.6度。
在现有技术中经纬度的存储方法是在数据库中,将经度存储在一列,将纬度存储在一列,由两个数值表示一个坐标点。查询周围地理位置信息的方法是在数据库中通过用户给定的一个坐标点(X,Y)和一个范围来查找这个范围内所有的坐标点,此坐标范围通常可由一坐标信息来表示,例如,东经45.6,北纬14.2,通常表示东经45.60-45.69,北纬14.20-14.29的范围。在查询过程中,需要对于数据库中的每一个坐标点进行两次匹配。首先,从数据库中取出一列坐标点的经度值,将目标经度X在此列经度值中进行匹配。如果经度值匹配成功,进一步,取出对应的纬度值,将目标纬度Y在此列纬度值中进行匹配,如果纬度值匹配成功,则坐标点匹配成功。按照上述方法就能找到这个范围内所有的坐标点。
但是,现有技术的查询周围地理位置信息的方法的查询效率较低。
发明内容
本发明的目的在于提出一种查询周围地理位置信息的方法及装置,以解决在数据库中查询周围地理位置信息效率较低的问题。
本发明提供了一种查询周围地理位置信息的方法,所述方法包括:
获取用户输入的查询请求中的经度坐标值和纬度坐标值;
将所述经度坐标值和纬度坐标值的各数值位,按照设定规则合并,成为目标字符串;
将所述目标字符串与数据库中存储坐标点的字符串的对应数值位进行比较,以获得查询结果。
对应地,本发明还提出了一种查询周围地理位置信息的装置,所述装置包括:
获取模块,用于获取用户输入的查询请求中的经度坐标值和纬度坐标值;
合并模块,用于将所述经度坐标值和纬度坐标值的各数值位,按照设定规则合并,成为目标字符串;
比较模块,用于将所述目标字符串与数据库中存储坐标点的字符串的对应数值位进行比较,以获得查询结果。
本发明提出了一种查询周围地理位置信息的方法和装置,通过将地理位置信息的经度坐标值和纬度坐标值合并为一个字符串的形式,能够通过一次匹配查询出周围的所有地理位置信息,提高了在数据库中查询周围地理位置信息的效率。
附图说明
图1是本发明第一实施例提供的查询周围地理位置信息的方法的实现流程图;
图2是本发明第二实施例提供的查询周围地理位置信息的装置的结构示意图。
具体实施方式
为使本发明解决的技术问题、采用的技术方案和达到的技术效果更加清楚,下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部内容。下面结合附图并通过具体实施方式来进一步说明本发明的技术方案。
实施例一
图1是本发明第一实施例提供的查询周围地理位置信息的方法的实现流程图。本发明实施例提供的方法可以由本发明实施例提供的查询周围地理位置信息的装置来执行,该装置可以由软件和/或硬件来实现。如图1所示,本发明实施例提供的方法包括:
步骤101、获取用户输入的查询请求中的经度坐标值和纬度坐标值。
例如,用户要查询坐标信息为东经57.64911度,北纬10.40744度的地理位置的在一定周围范围的所有点,则获取用户的查询请求中的经度坐标值为57.64911,纬度坐标值为10.40744。
步骤102、将所述经度坐标值和纬度坐标值的各数值位,按照设定规则合并,成为目标字符串。
其中,经度坐标值和纬度坐标值的各数值可以是十进制数值,也可以将十进制数值转化为二进制数值或十六进制数值。所述合并的规则优选为将所述经度坐标值和纬度坐标值的各数值位,隔位交叉合并,但并不限于此,例如也可以是将经度值在前,纬度值在后。数据库中坐标点的经度值和纬度值采用同样的规则进行合并来存储。
步骤103、将所述目标字符串与数据库中存储坐标点的字符串的对应数值位进行比较,以获得查询结果。
其中,在数据库中取出一坐标点的字符串,将所述字符串与目标字符串进行比较,如果所述字符串的对应数值位与目标字符串相匹配,则所述字符串与目标字符串匹配成功。按照上述方法就能找到用户要查询的所有坐标点。
上述方案的有益效果是通过将用户查询请求中的经度坐标值和纬度坐标值转化为目标字符串的形式,能够通过一次匹配查询出用户要查询的所有点。
进一步的,将所述经度坐标值和纬度坐标值的各数值位,按照设定规则合并,成为目标字符串优选包括:将所述经度坐标值和纬度坐标值的各数值位,隔位交叉合并,成为目标字符串,相应地,将所述目标字符串与数据库中存储坐标点的字符串的对应数值位进行比较包括:从数据库中存储坐标点的字符串的最高位开始,与所述目标字符串进行比较。
上述隔位交叉的好处在于,由于经度值和纬度值隔位交叉设置,所以可以从高位开始,同时比较经度值和纬度值。
在上述方案中,优选是,将所述经度坐标值和纬度坐标值的各数值位,隔位交叉合并,成为目标字符串之前,还包括:将所述经度坐标值和纬度坐标值分别转换为二进制数值。
优选是,将所述目标字符串与数据库中存储坐标点的字符串的对应数值位进行比较之前,还包括:将数据库中以字符形式存储的坐标点字符串的各字符转换为二进制数值。
经度值和纬度值合并后的字符串,自高位开始表示一定的范围,越低的位数,则精度越高,限定的范围越小。而二进制可将每位所限定的范围最大的精细化,因为十进制相当于把一个范围十等分,二进制相当于把每个范围二等分,所以每个二进制位的数值能将范围缩小至二分之一来查询,十进制需缩小至十分之一来查询,因此二进制每个位数的数值表达的范围更精确。
优选是,将所述目标字符串与数据库中存储坐标点的字符串的对应数值位进行比较之前,还包括:根据所述查询请求中的待查询范围值确定所述范围对应的低位数量;将所述目标字符串的所述低位数量的低位值删除。
由前述方案可知,隔位交叉字符串中,每个数值位代表一定的范围,位数越高,则确定的范围越大,低位值将在高位值的范围内继续缩小范围。所以,本实施例的方案可以基于待查询的范围大小确定应比较的高数位,从而将低位的数值给删除,以减少在数据库中的比对量。
本实施例提供的查询周围地理位置信息的方法,通过将地理位置信息的经度坐标值和纬度坐标轴转化为目标字符串的形式,能够通过一次匹配查询出周围的所有地理位置信息,提高了在数据库中查询周围地理位置信息的效率。
下面通过实例进行说明,数据库中的坐标点,均以字母字符串进行存储,以减小存储空间。以ezs42为例,将相应的字母替换为十六进制数字。再将十六进制数字转换为二进制数字。得到东经(0111110000000),北纬(101111001001)。每一个二进制数字表示对范围的一次二等分。从第一个比特到最后一个比特,每一个比特表示对上一次划分产生的区域进行一次二等分。以纬度距离,第一个比特将-90度到90度之间等分。0表示-90度到0度,1表示0度到90度。对每个比特一次进行上述过程。ezs42对应的坐标即是西经-5.6度,北纬42.6度。数据库中的坐标点均按照上述规则进行存储。
待查询的坐标信息为东经116.3906度,北纬39.92324度。东经116.3906度用二进制数值表示为11010010110001000100,北纬39.92324度用二进制数值表示为10111000110001111001。将经度坐标值和纬度坐标值隔位交叉合并,奇数位是纬度,偶数位是经度,得到合并后的二进制数值1110011101001000111100000011010101100001。可以将二进制数与数据库中坐标点转化而成的二进制数进行比对,以查询坐标点是否位于待查询的位置范围内。或者,也可将合并后的二进制数值转化为十六进制数值,再转换为字母字符串,得到wx4g0ec1。将字符串与数据库中字符串进行比对。各种制式的字符串,均可以确定仅比较设定的前几位前缀,来确定范围。
实施例二
图2是本发明第二实施例提供的查询周围地理位置信息的装置的结构示意图。如图2所示,本发明实施例提供的装置包括:获取模块201、合并模块202和比较模块203。
其中,所述获取模块201,用于获取用户输入的查询请求中的经度坐标值和纬度坐标值。所述合并模块202,用于将所述经度坐标值和纬度坐标值的各数值位,按照设定规则合并,成为目标字符串。所述比较模块203,用于将所述目标字符串与数据库中存储坐标点的字符串的对应数值位进行比较,以获得查询结果。
在上述方案中,利用合并模块202将用户查询请求中的经度坐标值和纬度坐标值转化为目标字符串,再通过比较模块203将所述目标字符串与数据库中存储坐标点的字符串的对应数值位进行比较,以获得查询结果,能够通过一次匹配查询出用户要查询的所有坐标点。
进一步的,所述合并模块具体用于:将所述经度坐标值和纬度坐标值的各数值位,隔位交叉合并,成为目标字符串,相应地,所述比较模块具体用于:从数据库中存储坐标点的字符串的最高位开始,与所述目标字符串进行比较。
在上述方案中,优选是,还包括第一转换模块和第二转换模块。
其中,所述第一转换模块用于将所述经度坐标值和纬度坐标值的各数值位,隔位交叉合并,成为目标字符串之前,将所述经度坐标值和纬度坐标值分别转换为二进制数值;所述第二转换模块用于将所述目标字符串与数据库中存储坐标点的字符串的对应数值位进行比较之前,将数据库中以字符形式存储的坐标点字符串的各字符转换为二进制数值。
优选是,还包括低位删除模块。
其中,所述确定模块低位删除模块,用于将所述目标字符串与数据库中存储坐标点的字符串的对应数值位进行比较之前,根据所述查询请求中的待查询范围值确定所述范围对应的低位数量;将所述目标字符串的所述低位数量的低位值删除。
本实施例提供的查询周围地理位置信息的装置,利用合并模块将用户查询请求中的经度坐标值和纬度坐标值转化为目标字符串,再通过比较模块将所述目标字符串与数据库中存储坐标点的字符串的对应数值位进行比较,能够通过一次匹配查询出用户要查询的所有地理位置信息,提高了在数据库中查询周围地理位置信息的效率。
本实施例提供的查询周围地理位置信息的装置用于执行本发明任意实施例提供的查询周围地理位置信息的方法,具备相应的功能模块,达到相同的技术效果,在装置实施例中未详述的内容参考方法实施例。
注意,上述内容仅为本发明的较佳实施例。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其它等效实施例,而本发明的范围由所附的权利要求范围决定。
Claims (8)
1.一种查询周围地理位置信息的方法,其特征在于,包括:
获取用户输入的查询请求中的经度坐标值和纬度坐标值;
将所述经度坐标值和纬度坐标值的各数值位,按照设定规则合并,成为目标字符串;
将所述目标字符串与数据库中存储坐标点的字符串的对应数值位进行比较,以获得查询结果。
2.根据权利要求1所述的方法,其特征在于:
将所述经度坐标值和纬度坐标值的各数值位,按照设定规则合并,成为目标字符串包括:将所述经度坐标值和纬度坐标值的各数值位,隔位交叉合并,成为目标字符串,
相应地,将所述目标字符串与数据库中存储坐标点的字符串的对应数值位进行比较包括:从数据库中存储坐标点的字符串的最高位开始,与所述目标字符串进行比较。
3.根据权利要求1所述的方法,其特征在于:
将所述经度坐标值和纬度坐标值的各数值位,隔位交叉合并,成为目标字符串之前,还包括:将所述经度坐标值和纬度坐标值分别转换为二进制数值;
将所述目标字符串与数据库中存储坐标点的字符串的对应数值位进行比较之前,还包括:将数据库中以字符形式存储的坐标点字符串的各字符转换为二进制数值。
4.根据权利要求1-3任一项所述的方法,其特征在于,将所述目标字符串与数据库中存储坐标点的字符串的对应数值位进行比较之前,还包括:
根据所述查询请求中的待查询范围值确定所述范围对应的低位数量;
将所述目标字符串的所述低位数量的低位值删除。
5.一种查询周围地理位置信息的装置,其特征在于,包括:
获取模块,用于获取用户输入的查询请求中的经度坐标值和纬度坐标值;
合并模块,用于将所述经度坐标值和纬度坐标值的各数值位,按照设定规则合并,成为目标字符串;
比较模块,用于将所述目标字符串与数据库中存储坐标点的字符串的对应数值位进行比较,以获得查询结果。
6.根据权利要求5所述的装置,其特征在于:
所述合并模块具体用于:将所述经度坐标值和纬度坐标值的各数值位,隔位交叉合并,成为目标字符串,
相应地,所述比较模块具体用于:从数据库中存储坐标点的字符串的最高位开始,与所述目标字符串进行比较。
7.根据权利要求5所述的装置,其特征在于,还包括:
第一转换模块,用于将所述经度坐标值和纬度坐标值的各数值位,隔位交叉合并,成为目标字符串之前,将所述经度坐标值和纬度坐标值分别转换为二进制数值;
第二转换模块,用于将所述目标字符串与数据库中存储坐标点的字符串的对应数值位进行比较之前,将数据库中以字符形式存储的坐标点字符串的各字符转换为二进制数值。
8.根据权利要求5-7任一项所述的装置,其特征在于,还包括:
低位删除模块,用于将所述目标字符串与数据库中存储坐标点的字符串的对应数值位进行比较之前,根据所述查询请求中的待查询范围值确定所述范围对应的低位数量;
将所述目标字符串的所述低位数量的低位值删除。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310625985.2A CN103605775A (zh) | 2013-11-28 | 2013-11-28 | 一种查询周围地理位置信息的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310625985.2A CN103605775A (zh) | 2013-11-28 | 2013-11-28 | 一种查询周围地理位置信息的方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103605775A true CN103605775A (zh) | 2014-02-26 |
Family
ID=50123997
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310625985.2A Pending CN103605775A (zh) | 2013-11-28 | 2013-11-28 | 一种查询周围地理位置信息的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103605775A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104899311A (zh) * | 2015-06-15 | 2015-09-09 | 中国地质大学(武汉) | WebGIS矢量数据高效传输方法 |
CN106897314A (zh) * | 2015-12-21 | 2017-06-27 | 北京国基科技股份有限公司 | 基于经度、纬度比特交织的行键的位置数据区域查询方法 |
CN106933997A (zh) * | 2017-03-01 | 2017-07-07 | 四川艾特赢泰智能科技有限责任公司 | 一种解析Mysql数据库时间格式的方法 |
CN111177598A (zh) * | 2019-12-26 | 2020-05-19 | 成都星时代宇航科技有限公司 | 一种地理位置跳转方法 |
CN111460237A (zh) * | 2020-03-31 | 2020-07-28 | 拉扎斯网络科技(上海)有限公司 | 一种数据查询的方法、装置、可读存储介质和电子设备 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101493846A (zh) * | 2009-02-27 | 2009-07-29 | 孙群 | 地址编码方法以及应用该方法的定位系统 |
-
2013
- 2013-11-28 CN CN201310625985.2A patent/CN103605775A/zh active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101493846A (zh) * | 2009-02-27 | 2009-07-29 | 孙群 | 地址编码方法以及应用该方法的定位系统 |
Non-Patent Citations (4)
Title |
---|
匿名: "geohash:用字符串实现附近地点搜索", 《WWW.BLOGREAD.CN/IT/ARTICLE.PHP?ID=3947》, 5 July 2011 (2011-07-05), pages 1 - 4 * |
匿名: "查找附近点--Geohash方案讨论", 《BLOG.SINA.COM.CN/S/BLOG_7C05385F0101EOFB.HTML》, 28 December 2012 (2012-12-28), pages 1 - 8 * |
匿名: "经纬度搜索(1)-Geohash算法原理", 《BLOG.SINA.COM.CN/S/BLOG_8D8425F30101281W.HTML》, 18 August 2012 (2012-08-18), pages 1 - 3 * |
金安等: "基于Geohash的面数据区域查询", 《地理与地理信息科学》, vol. 29, no. 5, 30 September 2013 (2013-09-30), pages 31 - 35 * |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104899311A (zh) * | 2015-06-15 | 2015-09-09 | 中国地质大学(武汉) | WebGIS矢量数据高效传输方法 |
CN106897314A (zh) * | 2015-12-21 | 2017-06-27 | 北京国基科技股份有限公司 | 基于经度、纬度比特交织的行键的位置数据区域查询方法 |
CN106897314B (zh) * | 2015-12-21 | 2019-08-23 | 北京国基科技股份有限公司 | 基于经度、纬度比特交织的行键的位置数据区域查询方法 |
CN106933997A (zh) * | 2017-03-01 | 2017-07-07 | 四川艾特赢泰智能科技有限责任公司 | 一种解析Mysql数据库时间格式的方法 |
CN111177598A (zh) * | 2019-12-26 | 2020-05-19 | 成都星时代宇航科技有限公司 | 一种地理位置跳转方法 |
CN111177598B (zh) * | 2019-12-26 | 2023-06-27 | 深圳市超时空探索科技有限公司 | 一种地理位置跳转方法 |
CN111460237A (zh) * | 2020-03-31 | 2020-07-28 | 拉扎斯网络科技(上海)有限公司 | 一种数据查询的方法、装置、可读存储介质和电子设备 |
CN111460237B (zh) * | 2020-03-31 | 2024-02-27 | 拉扎斯网络科技(上海)有限公司 | 一种数据查询的方法、装置、可读存储介质和电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103605775A (zh) | 一种查询周围地理位置信息的方法及装置 | |
US20140278228A1 (en) | Mapping uncertain geometries to graticules | |
CN110502599B (zh) | 地图数据的查询方法、装置和计算机可读存储介质 | |
CN110321443B (zh) | 三维实景模型数据库构建方法、装置及数据服务系统 | |
CN102855322B (zh) | 一种基于空间探索技术的地图数据存储方法 | |
CN111078807B (zh) | 位置查询方法、装置、计算机设备及存储介质 | |
CN108229740B (zh) | 一种商圈边界的确定方法、装置、服务器及存储介质 | |
CN103106284B (zh) | 用于三维数据球信息关联的剖分中间件和信息关联方法 | |
CN112652036B (zh) | 道路数据的处理方法、装置、设备及存储介质 | |
CN112418129B (zh) | 一种点云数据处理的方法、装置、电子设备及存储介质 | |
CN111143503A (zh) | 基于统一坐标系建立空间数据库的方法及数据库装置 | |
CN101977435A (zh) | 终端定位方法和系统 | |
CN113706592A (zh) | 一种定位信息的修正方法、装置、电子设备和存储介质 | |
CN114048204A (zh) | 基于数据库倒排索引的北斗网格空间索引方法和装置 | |
CN106294484A (zh) | 一种更新电子地图数据的方法及装置 | |
CN106802958B (zh) | Cad数据到gis数据的转换方法及系统 | |
CN103412947A (zh) | 针对空间大数据的多边形搜索方法 | |
CN112100308B (zh) | 一种北斗时空轨迹的相似性查询方法 | |
CN112699195B (zh) | 地理空间数据处理方法、装置、计算机设备及存储介质 | |
CN103023997A (zh) | 基于网格缓存技术的海量地理信息名址转换方法及其装置 | |
CN111858785B (zh) | 地图离散型要素的匹配方法、装置、系统及存储介质 | |
CN110266834B (zh) | 基于互联网协议地址的地区查找方法及装置 | |
CN100357705C (zh) | 一种基于lpt变换的星图识别方法 | |
CN105677843A (zh) | 一种自动获取宗地四至属性的方法 | |
CN113868555A (zh) | 一种轨迹检索方法、装置、设备以及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20140226 |