MySQL - Поиск отрицательных значений долготы с помощью BETWEEN

Я нашел много подобных сообщений и даже пытался выяснить, как обрабатывать отрицательные значения в MySQL, но безрезультатно.

У меня есть сайт, на котором я использую Google Maps, и для повышения производительности я ограничиваю маркеры, которые рисуются на карте, теми, которые находятся в пределах границ карты.

Я хотел бы разработать запрос, который будет работать с положительными или отрицательными значениями широты и долготы .

Для базы данных:

latitude FLOAT( 10, 6 )
longitude FLOAT( 10, 6 )

Запрос:

SELECT *
FROM `table` 
WHERE `latitude` BETWEEN 47.926930 AND 47.929806 
AND `longitude` BETWEEN -97.077303 AND -97.083997

Если я отбрасываю предложение BETWEENдля долготы, я получаю результаты, хотя и неверные, без долготы. ] ограничение.

Я пробовал это:

AND -`longitude` BETWEEN ABS( -97.077303 ) AND ABS( -97.083997 )

Это работает, но только для отрицательных значений долготы.

Нужно ли мне проверять долготу, если она отрицательная?

8
задан hungerstar 1 February 2015 в 20:25
поделиться