【发布时间】:2010-09-01 10:18:35
【问题描述】:
我已将我的问题简化为以下选择语句。
select
u.UserId,
aVariable = cast((case when exists(select * from TblUser u where u.Disabled=1) then 1 else 0 end) as bit),
from TblUser u
where aVariable = 1
aVariable 不是表的列,而只是在此 select 语句中获取值的列。
有没有办法在没有得到 Invalid column name aVariable 错误?
【问题讨论】:
-
这个例子没有多大意义,即使它是正确的语法,它实际上与说“where 1=1”是一样的。你能举一个更具体的例子吗?
-
你需要更新声明——看我的回答。
-
我不明白您选择正确的答案是如何工作的 - 请参阅我编辑的答案。
-
@Hogan:忘记 sql 语句中的逻辑。我需要的是语法。它是关于如何在我的“where”子句中使用 select-statement-column。
标签: sql sql-server-2005