Я хочу выполнить запрос, в котором я переименовываю один из столбцов, используя оператор "AS", и повторно использую это имя псевдонимого столбца в инструкции "WHERE". Ниже приведен пример:
SELECT lat AS latitude
FROM poi_table
WHERE latitude < 500
Проблема здесь в том, что SQL Server не нравится этот запрос из-за предложения WHERE и имени оператора AS, на которое ссылаются в предложении WHERE. Может ли кто-нибудь объяснить, почему это происходит, и что я могу сделать, чтобы исправить мою ситуацию?
Предположим, что у меня должна быть формула, которую я использовал в SELECT-части запроса, как мне это решить?
SELECT *,
( 6371*1000 * acos( cos( radians(42.3936868308) ) * cos( radians( lat ) ) * cos( radians( lon ) - radians(-72.5277256966) ) + sin( radians(42.3936868308) ) * sin( radians( lat ) ) ) )
AS distance
FROM poi_table
WHERE distance < 500;