Sql server 2012 表别名在sql server 2012上不起作用

Sql server 2012 表别名在sql server 2012上不起作用,sql-server-2012,Sql Server 2012,我的表别名在SQL server 2012上不起作用。我启用了智能感知。 但它仍然不起作用 从部门a中选择*-当我写入时,别名a应自动获取所有列: select * from department a where a.departmentid = .. 当我写a时,部门ID列必须自动出现 我的服务器中是否有任何设置需要更改?您描述它的方式应该可以工作。这是基本的TSQL,在SSMS中不能禁用它的使用 下面是一个使用表别名的示例 USE AdventureWorks2008R2; GO

我的表别名在SQL server 2012上不起作用。我启用了智能感知。 但它仍然不起作用

从部门a中选择*-当我写入时,别名a应自动获取所有列:

select *
  from department a
 where a.departmentid = .. 
当我写a时,部门ID列必须自动出现


我的服务器中是否有任何设置需要更改?

您描述它的方式应该可以工作。这是基本的TSQL,在SSMS中不能禁用它的使用

下面是一个使用表别名的示例

USE AdventureWorks2008R2;
GO
SELECT c.CustomerID, s.Name
FROM Sales.Customer c -- using 'AS'
JOIN Sales.Store AS s -- Not using 'AS'
ON c.CustomerID = s.BusinessEntityID ;
AS的使用不是强制性的


如果您确实在SQL Server 2012上运行,假设您正在SQL Server Management Studio中查询您的数据库,则此语法肯定会起作用。

考虑到Rajeev的查询不完整,这可能会回答他的问题,也可能不会回答他的问题,但由于这是Google的第一个结果,我想我会向人们指出

您正在混合隐式连接和显式连接。这是允许的,但你需要知道如何正确地做到这一点

显式:涉及Join关键字的联接

问题是,显式连接使用JOIN关键字实现的连接优先于隐式连接“逗号”连接,其中连接条件在where子句中指定


我不明白你在问什么?在表名后添加“a”将允许您在将来仅使用“a”引用该表…嗨,Rajeev,您能在出现错误的地方添加实际查询吗?您收到了什么错误消息?您引用的语法看起来不错,应该可以使用。也请编辑您的问题,以避免重复您的问题。考虑到不完整的性质,这可能是Hi karel的重复,谢谢你回答我的问题。这个语法不起作用,所以我在这里发布这个问题。我想我必须在sql server 2012中进行一些设置更改,以使其成为可能。但是我不知道我必须要做什么…有人能帮我解决这个问题吗…谢谢你。。。