select * from table_name
where part_name = 'A'也是全表扫描!为什么?
7 个解决方案
#1
索引是本地索引吗?part_name是分区关键字?
分区最主要的两个作用就是高可管理性与可扩展性,并没有说性能的提升。因为大表的分区,我们可以方便的管理一个分区而不至于是整张表,但是,如果不是按照分区条件进行的查询,而索引又是本地索引,查询需要分开到多个本地索引树去扫描而不是一个索引树。
分区最主要的两个作用就是高可管理性与可扩展性,并没有说性能的提升。因为大表的分区,我们可以方便的管理一个分区而不至于是整张表,但是,如果不是按照分区条件进行的查询,而索引又是本地索引,查询需要分开到多个本地索引树去扫描而不是一个索引树。
#2
看看分区表就明白了!
#3
up
#4
to libin_ftsafe(子陌红尘):已经建立了本地索引啊?而且local索引就是建立在分区字段上的!
#5
根据part_name分区的么?
#6
建分区时要指定条件。
插入时会根据特性将数据插入到相应分区。
插入时会根据特性将数据插入到相应分区。
#7
对了,select * from table_name partition(part_name)这样执行如果你也select * from plan_table看到table access full,那要注意后面的字段pstart和pstop,那里是全扫描的开始分区和结束分区,如果是同一个分区代号,那说明分区全扫描,只有是从1到N才是表的全扫描
#1
索引是本地索引吗?part_name是分区关键字?
分区最主要的两个作用就是高可管理性与可扩展性,并没有说性能的提升。因为大表的分区,我们可以方便的管理一个分区而不至于是整张表,但是,如果不是按照分区条件进行的查询,而索引又是本地索引,查询需要分开到多个本地索引树去扫描而不是一个索引树。
分区最主要的两个作用就是高可管理性与可扩展性,并没有说性能的提升。因为大表的分区,我们可以方便的管理一个分区而不至于是整张表,但是,如果不是按照分区条件进行的查询,而索引又是本地索引,查询需要分开到多个本地索引树去扫描而不是一个索引树。
#2
看看分区表就明白了!
#3
up
#4
to libin_ftsafe(子陌红尘):已经建立了本地索引啊?而且local索引就是建立在分区字段上的!
#5
根据part_name分区的么?
#6
建分区时要指定条件。
插入时会根据特性将数据插入到相应分区。
插入时会根据特性将数据插入到相应分区。
#7
对了,select * from table_name partition(part_name)这样执行如果你也select * from plan_table看到table access full,那要注意后面的字段pstart和pstop,那里是全扫描的开始分区和结束分区,如果是同一个分区代号,那说明分区全扫描,只有是从1到N才是表的全扫描