select top 1 from ( select * from article )上面这个语句有语法上的错误吗?
在sqlserver的查询分析器里总是提示Msg 156, Level 15, State 1, Line 1
Incorrect syntax near the keyword 'from'.这是我原来一直用的一个双top分页语句的简化版本
我原来分页用的语句是
select top 1 from ( select top 3 * from article order by id asc ) order by id desc;
这样的,这个句子放在查询分析器里错误提示为
Msg 156, Level 15, State 1, Line 1
Incorrect syntax near the keyword 'from'.
Msg 156, Level 15, State 1, Line 1
Incorrect syntax near the keyword 'order'.

解决方案 »

  1.   

    select top 1 * from ( select top 3 * from article order by id asc ) t order by id desc;
      

  2.   

    少个别名
    select top 1 from ( select * from article ) t还是少个别名
    select top 1 from ( select top 3 * from article order by id asc ) t order by id desc;
      

  3.   

    少个别名
    select top 1 * from ( select * from article ) t还是少个别名
    select top 1 * from ( select top 3 * from article order by id asc ) t order by id desc;
      

  4.   

    哦,我明白了
    原来在sqlserver要把查询出来的语句as成一个临时表就行了
      

  5.   

    顺便说下在access里似乎不需要这个别名