Я нашел много подобных сообщений и даже пытался выяснить, как обрабатывать отрицательные значения в 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 )
Это работает, но только для отрицательных значений долготы
.
Нужно ли мне проверять долготу
, если она отрицательная?