gpt4 book ai didi

sql-server-2005 - 如何在 SQL Server 的 where 子句中使用别名列名

转载 作者:行者123 更新时间:2023-12-03 01:34:19 27 4
gpt4 key购买 nike

当我尝试在 SQL Server 2005 中执行以下代码时,出现错误

Invalid column name DistanceFromAddress

代码:

select 
SQRT(POWER(cast(Program_Latitude as float) - cast('41.5126237' as float), 2) +
POWER(cast(Program_Longitude as float) - cast('-81.6516411' as float), 2)) * 62.1371192 AS DistanceFromAddress
from
tblProgram
where
DistanceFromAddress < 2

我使用 select 语句正确获取值,但是当我尝试检查条件 where DistanceFromAddress < 2 时我收到错误。

如何解决这个问题?

最佳答案

不能在 WHERE 子句中使用别名列。您可以尝试使用派生表。也许是这样的(抱歉,没有测试过):

SELECT * 
FROM (
SELECT SQRT( POWER( cast(Program_Latitude as float)
- cast('41.5126237' as float), 2)
+ POWER( cast(Program_Longitude as float)
- cast('-81.6516411' as float), 2)
) * 62.1371192 AS DistanceFromAddress
from tblProgram
) mytable
WHERE DistanceFromAddress < 2

关于sql-server-2005 - 如何在 SQL Server 的 where 子句中使用别名列名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16161938/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com