首页 新闻 赞助 找找看

进来看看我这句sql怎么报错了。

0
[已解决问题] 解决于 2013-08-22 10:01

select top 1 LogId from (select top 2 LogId from [Log])

报错了。LogId是 [Log]表的主键

为什么报错?

sql
Eysa的主页 Eysa | 初学一级 | 园豆:62
提问于:2013-08-21 15:57
< >
分享
最佳答案
1

你后面加上一个别名呢???

 

select top 1 LogId from (select top 2 LogId from [Log]) TempTable

奖励园豆:5
顾晓北 | 专家六级 |园豆:10844 | 2013-08-21 16:09

没错

改成 select top 1 LogId from (select top 2 LogId from [Log]) as t 就正确了。

请问,这是为什么呢?

Eysa | 园豆:62 (初学一级) | 2013-08-21 16:13

@Eysa:  select  top 1 LogID from  表,后面那个是查询结果貌似不是表

风醉 | 园豆:1197 (小虾三级) | 2013-08-21 16:16
其他回答(2)
1

select top 1 LogId from [Log] where LogId in (select top 2 LogId from [Log])

改成这样就对了的。

camille繁花 | 园豆:16 (初学一级) | 2013-08-21 16:02

改成 select top 1 LogId from (select top 2 LogId from [Log]) as t 就正确了。

请问,这是为什么呢?

支持(0) 反对(0) Eysa | 园豆:62 (初学一级) | 2013-08-21 16:13
0

路过学习

panjk | 园豆:712 (小虾三级) | 2013-08-22 08:54
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册