修改语句为;
select max([id]) from (select top 10 [id] from areakk order by [id]) as tt  
就可以了

解决方案 »

  1.   

    這個語句執行的時候出現你所未預料的結果,主要是由於在子查詢中你沒有指定他的排序規則,也即order by 的條件,那是不是說如果不指定就一定會出現樓主所描述的問題呢?其實也不一定。我相信樓主執行這個語句的表中,ID這一個列應該是表的主鍵。或者是這個列上傳建了索引,導致SQL在編譯執行計劃的過程中直接使用了索引查詢而導致的。樓主可以試一下,如果去除這個表ID列的主鍵或者索引。你所寫的查詢也會得到你所需要結果。
      

  2.   

    那一定是
    select top 10 [id] from areakk 你这句中最大的id也即是该最大的id;如果不是的,不会出现楼主所描述的情况的