【发布时间】:2022-01-13 19:39:36
【问题描述】:
【问题讨论】:
-
具体是什么DMBS?有些要求您在计算字段之前添加关键字,或者有些保留关键字。我可以在这里看到任何一个问题。
-
您的 IDE(可能是 SQL Server SSMS)将您的列别名显示为蓝色 - 这 表示 它是一个保留关键字,因此您应该将它定界
[Filter]但是上面的解释是可能是你的问题。
【问题讨论】:
[Filter] 但是上面的解释是可能是你的问题。
您不能在 where 子句中引用列别名,因为 where 在实现别名之前被处理。
有几种解决方法,假设您可以使用 SQL Server
select *
from table t
cross apply (values(concat(columna,columnb)))c([filter])
where [filter]='something'
另外请注意,在大型数据集上性能不会很好,因为此标准是不可分割的
【讨论】: