Я использую ROR с SQlite3, и я пытаюсь получить результаты из таблицы местоположений, которые удовлетворяют математическому условию, содержащему квадратные члены атрибутов. Таблица «местоположения» содержит Локатор: float и Longitude: float Field. Вот моя строка кода для поиска:rails math query внутри where clause
@results = Location.where('Latitude > ? AND Latitude < ? AND Elevation > ? AND Elevation < ? AND ((Latitude-?)**2 +(Longitude - ?)**2 <= (?)**2)',@latitude_Range_Start,@latitude_Range_End,@elevation_Range_Start, @elevation_Range_End,@latitude_mycity.to_f, @longitude_mycity.to_f, @rad_range.to_f)
Rails отображает эту ошибку:
SQLite3::SQLException: near "*": syntax error: SELECT "locations".* FROM "locations" WHERE (Latitude > 20.7333148 AND Latitude < 40.7333148 AND Elevation > -651.3542785644531 AND Elevation < 1348.6457214355469 AND ((Latitude-30.7333148)**2 +
(Longitude - 76.7794179)**2 <= (1111.0)**2))
Как запросить мое состояние в ИНЕКЕ. Кажется, что возведение в квадрат терминов внутри него является проблемой. Как мне это сделать?
Спасибо, решить мою проблему. –