【发布时间】:2010-09-07 23:06:53
【问题描述】:
我正在尝试通过链接的 SSAS 服务器执行 SQL 查询。初始查询工作正常:
SELECT "Ugly OLAP name" as "Value"
FROM OpenQuery( OLAP, 'OLAP Query')
但如果我尝试添加:
WHERE "Value" > 0
我收到一个错误
列名“值”无效
任何想法我可能做错了什么?
所以问题是查询元素的处理顺序与它们的写入顺序不同。根据这个来源:
http://blogs.x2line.com/al/archive/2007/06/30/3187.aspx
MSSQL中的求值顺序是:
- 来自
- 开启
- 加入
- 在哪里
- 分组依据
- 有
- 选择
- 订购人
所以直到 WHERE 和 HAVING 子句之后才处理别名。
【问题讨论】:
-
这个问题的所有非答案都是怎么回事!?
标签: sql sql-server