这样一条sql语句在sqlserver上运行没有问题,通过jdbc访问就报错,大家知道怎么解决吗?“select top 10 * from (select top 80 * from syhouse order by houseID) order by houseID DESC”
错误信息:
com.microsoft.sqlserver.jdbc.SQLServerException: 关键字 'order' 附近有语法错误。环境:
sqlserver2005
sqljdbc:1.2.2828
jdk:1.5

解决方案 »

  1.   

    如果sqlserver上运行没有问题,通过jdbc访问就应该没问题
    “select   top   10   b.*   from   (select   top   80   a.*   from   syhouse as a order   by   houseID) as b  order   by   houseID   DESC”
    定义个别名标志一下能行不?
      

  2.   

    select   top   10   *   from   select   top   80   *   from   是什么意思啊???(不要笑我啊!!)
      

  3.   

    为什么要先select top 80 * from,再select top 10 * from,而不直接select top 10 * from??
      

  4.   

    谢谢yirentianran ,定义别名就可以了。