在家帮我解决条SQL语句吧 
 
我有条SQL语句,是这样的
select top 10 ID,ConsumerNO,Name from client 
where CorporationNO=301731 and ID not in(select top 2025110 ID from client where CorporationNO=301731 
order by ID desc)order by ID desc 
我现在这个表里有2百多万条记录,
我在浏览1到前几十万条记录是很快的,一下就出来,
但是一到后面,也就是快接近尾页了,那些数据就特别慢,我在查询分析器里试了下要11秒啊
我在这个表里建了这样的索引
CREATE INDEX client_Index ON client(CorporationNO,ConsumerNO)
不知哪里还没有搞好 

解决方案 »

  1.   

    CREATE INDEX client_Index ON client(CorporationNO,ConsumerNO)
    可以这样建index ?我没见过
      

  2.   

    select top 10 ID,ConsumerNO,Name from client 
    where CorporationNO=301731 and ID not in(select top 2025110 ID from client where CorporationNO=301731 
    order by ID desc)order by ID desc --equal to below
    select top 10 * from (
    select top 2025120 ID,ConsumerNO,Name from client 
    where CorporationNO=301731 order by ID desc)
    order by ID
      

  3.   

    CREATE INDEX client_Index ON client(CorporationNO,ConsumerNO)
    可以这样建index ?我没见过
    --
    是可以建的,不过建了没有什么用一样
      

  4.   

    free_pop2k,你那句有语法错误啊
    服务器: 消息 156,级别 15,状态 1,行 6
    在关键字 'order' 附近有语法错误。
    我调试不出来
      

  5.   

    我试过,但是这样数据查出来都是一样的啊,
    无论我top 后面的数字怎 么变,都一样结果啊