
“Invalid column name” error on SQL statement from OpenQuery results我正在尝试通过链接的SSAS服务器执行SQL查询。初始查询工作正常:
但是,如果我尝试添加:
我得到一个错误
有什么想法我可能做错了吗? 所以问题是查询元素的处理顺序与它们的写入顺序不同。根据此来源: http://blogs.x2line.com/al/archive/2007/06/30/3187.aspx MSSQL中的评估顺序为: 因此直到WHERE和HAVING子句之后才处理别名。 这应该起作用:
不是说Value是保留字,而是因为它是列别名,而不是列名。通过使其成为嵌入式视图," Value"成为列名,然后可以在where子句中使用。 您使用"值"作为列别名,但我认为别名不能出现在where子句中。它仅用于命名返回的列值。您的where子句应引用原始列名:
我可以保证不将其保留在GROUP BY中。好消息是,它是普通的旧选定别名,效果很好。 哦,真可恶。我刚刚看到,您选择AS FOO。在这种情况下,您不需要HAVING子句吗?
我仍然不会使用"值"。但是可以肯定的是,在您的文档中查找它! |