SELECt在查询的投影()阶段执行列别名和计算,该阶段在选择(
WHERe和
JOIN)阶段之后发生。因此,无法在
WHERe子句或
JOIN条件中引用它们,因为它们尚不存在。您可以将带有
SELECT子句的查询用作子查询,也可以在
WHERe子句中重复计算:
select *from(select [FirstName], difference([FirstName], 'mitch') as similarityfrom [Dev].[dbo].[Name]) srcwhere similarity > 2order by similarity desc
或者
select [FirstName], difference([FirstName], 'mitch') as similarityfrom [Dev].[dbo].[Name]where difference([FirstName], 'mitch') > 2order by similarity desc



