首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > IBM DB2 >

查询记录数在上亿条SQL效率有关问题

2012-02-25 
查询记录数在上亿条SQL效率问题,请教高手假设表A有字段a, b, c, d四个字段,a, b, c, d均为主索引,表A数据

查询记录数在上亿条SQL效率问题,请教高手
假设表A有字段a, b, c, d四个字段,a, b, c, d均为主索引,表A数据量在亿级别。
SQL语句如下:select * from A where a=:a and b=:b and c>=:c and d<=:d,其中以:开头的均为传递过来的数据,且注意c,d字段,c>=:c and d<=:d,实在没有办法,只能这么写该查询条件,并非是between..and。

如果使用物化查询表,个人认为不太适合,因为A表不需要GROUP BY统计,经常会变化。

想请教高手,这样的SQL语句如何提供查询效率? 先谢谢了


[解决办法]
做分区表,并且做成MDC表
[解决办法]
做成mdc表,关键字是organized by(1,2)
你是按什么做的分区
[解决办法]

引用分区都做了,索引也做了

[解决办法]
如果你有quest central for db2的话,在tune Sql里查访问计划。
也可以在命令行方式用下列方法,查访问计划:
db2 connect to 数据库名 
db2 "explain plan for select * from A where a=:a and b=:b and c>=:c and d<=:d"
db2exfmt

热点排行