LAT1 = MIN (sağ üstteki lat, en altta sol lat)
LAT2 = MAX (sağ üst lat, alt-sol lat)
LON1 = MIN (sağ üstteki sol alt sol)
LON2 = MAX (sağ üstteki sol alt sol)
SELECT fields
FROM points
WHERE lat BETWEEN LAT1 AND LAT2
AND lon BETWEEN LON1 AND LON2
Bu şekilde, Prime Meridian'ı veya ekvatoru kutunuzla geçerseniz sorgu işlenmelidir.
180. meridyeni (ya da antimeriyen) idare etmek için, sağ-lonun sol-lon ile karşılaştırılması gerekir, doğru sayının negatif olup olmadığını ve sol sayının pozitif olup olmadığını kontrol etmelisiniz. Eğer öyleyse, o zaman 180. meridyeni geçtiniz. Sorgunuz daha sonra böyle bir şeye bakmak zorunda kalacaktı:
SELECT fields
FROM points
WHERE lat BETWEEN LAT1 AND LAT2
AND (lon BETWEEN LON1 AND -180 OR lon BETWEEN LON2 AND 180)
Gerçi, gerçek kutuplardan birinin üzerinde, gezegenin üstünde veya altında duran bir kutuyu nasıl ele alacağımı düşünmüyorum. =)