一个更好的主意如何从数据库中获取大量 MySql 数据
A better idea how to get a lot of MySql Data out of the db
我有一个很大的数据库,里面有很多地址,例如像这样(这里是json):
{"id":"1","desc":"Frankie Johnnie & Luigo Too","address":"939 W El Camino Real, Mountain View, CA","lat":"37.386337","lng":"-122.085823"}
我用一个简单的 MySql - 语句得到这个数据:
'Select * from datatable'
根据这个答案,我创建了 json 语句。
问题是 每个 数据都从 table 中取出,当数据库变大时,我认为请求需要一些时间。
我不知道如何改善 select 数据。
我需要数据库中的所有数据来创建地图。
是否有更好的解决方案来创建不那么多的流量?
或者这个请求不是那么密集并且不会产生那么多流量?
谢谢!
如果您创建地图,您应该只获取要在地图上绘制的数据,请尝试以下方法:
SELECT * FROM datatable
WHERE lat > 20
AND lat < 40
AND lng > -140
AND lng < -100;
当然这只是一个例子,您应该根据您在地图上显示的区域来计算经纬度限制。确保考虑到环绕,如果你显示的地球面积足够大,那么正方形可能不是最佳匹配,如果你 google 周围有多种方法可以为你的任何东西获得适当的地理数据限制想要。
如果这还不够,您还可以根据其他原则缩小范围,即描述或地址的部分匹配。
SELECT * FROM datatable
WHERE lat > 20
AND lat < 40
AND lng > -140
AND lng < -100
AND desc LIKE '%Frankie%';
我有一个很大的数据库,里面有很多地址,例如像这样(这里是json):
{"id":"1","desc":"Frankie Johnnie & Luigo Too","address":"939 W El Camino Real, Mountain View, CA","lat":"37.386337","lng":"-122.085823"}
我用一个简单的 MySql - 语句得到这个数据:
'Select * from datatable'
根据这个答案,我创建了 json 语句。 问题是 每个 数据都从 table 中取出,当数据库变大时,我认为请求需要一些时间。 我不知道如何改善 select 数据。 我需要数据库中的所有数据来创建地图。
是否有更好的解决方案来创建不那么多的流量? 或者这个请求不是那么密集并且不会产生那么多流量?
谢谢!
如果您创建地图,您应该只获取要在地图上绘制的数据,请尝试以下方法:
SELECT * FROM datatable
WHERE lat > 20
AND lat < 40
AND lng > -140
AND lng < -100;
当然这只是一个例子,您应该根据您在地图上显示的区域来计算经纬度限制。确保考虑到环绕,如果你显示的地球面积足够大,那么正方形可能不是最佳匹配,如果你 google 周围有多种方法可以为你的任何东西获得适当的地理数据限制想要。
如果这还不够,您还可以根据其他原则缩小范围,即描述或地址的部分匹配。
SELECT * FROM datatable
WHERE lat > 20
AND lat < 40
AND lng > -140
AND lng < -100
AND desc LIKE '%Frankie%';