日期:2014-05-17  浏览次数:20546 次

千万级数据量如何查询效率高
数据库中表A中有几千万条数据,请问要查询指定的一天的数据该如何写sql语句效率更高?一天中有许多具体的时间。
数据库 SQL 大数据

------解决方案--------------------
常规方法就是在日期列上创建索引,如果你需要查询的时候排序,那么就创建个聚集索引,创建的时候,日期列按照期望的排序顺序来创建,比如按照升序查询,那就create clustered index xxx on tb (日期列),倒序排序就加desc,如果不用排序, 加个非聚集索引。

如果不用select *而是select 少数列,那把那些列加在一个非聚集索引上,可以避免键查找
------解决方案--------------------
加索引并且分区
------解决方案--------------------
1.可以创建表分区按照时间来分区
2.可以将数量大的表拆分成很多很多的小表。这个小表是按照业务生成的。
------解决方案--------------------
能确定查询字段了
加对应的索引就行了
记录再多,改为分区表