2011-07-06 70 views
1

我开始使用T-SQL,但似乎误解了列别名概念。我试过寻找一个没有成功的答案,尽管我确信它对于一个更有经验的开发人员来说肯定是非常简单的。我正在使用SQL Server 2008使用T-SQL列别名时无效的列名称

select FirstName as nick 
from [Dev].[dbo].[Name] 
where nick like '%et%' 
order by nick desc 

错误:

Msg 207, Level 16, State 1, Line 2 Invalid column name 'nick'.

如何使这项工作?

回答

3
select FirstName as nick 
from [Dev].[dbo].[Name] 
where FirstName like '%et%' -- There is no such column "nick" in your table 
order by 1 desc 
2

这应该这样做。

SELECT FirstName as nick 
FROM Dev.dbo.Name 
WHERE FirstName like '%et%' 
ORDER BY FirstName DESC 
+0

咦?我首先回答,但你得到了答案?取消! :) – Bohemian

+0

@波希米亚对此感到抱歉。 +1来弥补它。 –