源表 source_table ,分区表 partition_table,两个表主键和索引都一致主键为DATE, CUST_CODE, OCCUR_DATE, SERIAL_NO, ORDER_NO, CURRENCY_TYPE,非聚集非聚集索引1 CUST_CODE, 非聚集索引2 DATE 分区表分区列是DATE,分区函数为RANGE RIGHT('20101101','20101201','20110101','20110201')SELECT DATE FROM source_table    WHERE DATE BETWEEN '20101201' AND '20101230'  --语句1SELECT DATE FROM partition_table WHERE DATE BETWEEN '20101201' AND '20101230'  --语句2这两句语句执行下来 语句1要快于语句2,查看执行计划,都用到了索引2,分区表查询语句中实际分区计数是5,也就是分区表的查询并没有区分查询的到底是哪个分区疑问:请问查询语句中的列完全被索引覆盖,为什么语句2 不能分清楚到底是查哪个分区呢?SELECT TOP 20000 * FROM source_table   WHERE DATE BETWEEN '20101201' AND '20101230' --语句3SELECT TOP 20000 * FROM partition_table WHERE DATE BETWEEN '20101201' AND '20101230' --语句4这两句语句执行下来 语句4要快于语句3,查看执行计划,都是全表扫描,分区表查询语句中实际分区计数是1,也就是分区表的查询分清了使用哪个分区疑问:语句4都没使用到索引,怎么会分清使用了哪个分区?初学分区表,目前对分区表的一些查询上有很多疑问,故想请教一下高手,请帮忙解答一下我的问题,谢谢。