SQL语句的FROM后能不能接子查询得出的表?

来源:百度知道 编辑:UC知道 时间:2024/09/22 03:28:19
我在SQL Server 2005查询分析器里运行以下语句
select name from
(select substring(id, 1, 2) id,name from customname)
提示在最后一个)附近有语法错误

是为什么啊?难道不能这样查询么?
在网上找过似乎可以这样用的……难道FROM后面必须接表和视图名称吗?

把你的子查询的表起个别名

我在SQL Server 2005查询分析器里运行以下语句
select a.name name from
(select substring(id, 1, 2) id,name from customname) a

给表取个别名
select a.name name from
(select substring(id, 1, 2) id,name from customname) a

declare @sql as varchar(20)
select substring(id, 1, 2) id,name=@sql from customname
set @sql = 'select * from '+@sql
exec(@sql)