Python, SQLAlchemy: запрос, фильтр и возвращаемое значение - PullRequest
1 голос
/ 06 октября 2011

Скажем, я запускаю запрос с фильтром,

Session.query(model.Place).join(model.Location).filter(model.Location.great_circle_distance(location) < r)

Чтобы получить результаты этого запроса, он должен был вычислить model.Location.great_circle_distance(location).После выполнения этого запроса я могу получить список Places, который соответствует этому критерию, имеющему great_circle_distance меньше r, но есть ли способ вернуть как результат этого расчета, так и список мест, которыесопоставить этот запрос одним махом?

1 Ответ

0 голосов
/ 06 октября 2011

Вы можете использовать join, column_property и mapper, чтобы получить класс, который, по сути, является представлением базы данных.Но если вы не собираетесь использовать это более чем в одном месте или количество строк огромно, я бы просто сделал отдельный запрос, чтобы получить объекты Location и использовать map для вычисления расстояний окружности.

...