sql >> Database teknologi >  >> RDS >> Mysql

hvordan man optimerer en geolokationsdatabase i mysql til euklidsk afstandssøgning/forespørgsel

Du vil have svært ved at optimere til den slags forespørgsler. En bedre mulighed ville være at beregne en afgrænsningsramme fra (x,y) koordinater og delta sendt ind. Forespørg derefter efter alle steder, hvor koordinaterne falder i det felt. Den forespørgsel ville være meget enklere og ville være i stand til at bruge alle indekser, du måtte have på x- og y-felterne.

Naturligvis er resultaterne fra den forespørgsel ikke så nøjagtige, da det er en afgrænsningsramme snarere end en cirkel. Hvis du vil have bedre resultater, kan du tage resultaterne fra afgrænsningsrammeforespørgslen og derefter bruge den langsommere euklidiske metode til at bortfiltrere dem, der ikke falder ind i cirklen.



  1. Undgå genindsend formular efter klik på tilbage-knappen

  2. Hvordan bruger man Partition By eller Max?

  3. Indsæt i SQLite Database android

  4. MySQL - Effektiv søgning med delvis ordmatch og relevansscore (FULLTEXT)