Det bästa indexet för din fråga är ett sammansatt index på (country, state, latitude, longitude)
(country
och state
kan bytas). MySQL har bra dokumentation om index med flera kolumner, vilket är här
.
I grund och botten, latitude
och longitude
är inte särskilt selektiva individuellt. Tyvärr stöder standard B-tree index bara en olikhet, och din fråga har två.
Egentligen, om du vill ha GIS-bearbetning, bör du använda en rumslig tillägg till MySQL.