Încerc să sfera mea de interogare pentru a selecta locațiile care sunt într-o casetă de încadrare de latitudine/longitudine. În general, acest lucru funcționează bine, având în caseta de încadrare nu trece linia de data internațional.
SELECT *
FROM locations
WHERE latitude BETWEEN ? AND ?
AND longitude BETWEEN ? AND ?
Cu toate acestea - dacă-mi casetă de încadrare a fost de a traversa linia de data internațional - spune longitudinale limitele 179.00
pentru a -179.00
apoi interogarea returnează nici un rezultat. Nu pot răsturna ordinea si schimba-l la între -179.00
și 179.00
pentru că asta ar în loc să se întoarcă lucruri în afara mea casetă de încadrare.
Ceea ce este cel mai sanatos mod de a determina cel mai bun caz SQL necesare (fie ca SQL sau psuedocode care ar ajuta obține cele mai bune SQL).