对于在分区表上创建索引,以下说法正确的是:
A. 局部索引是在表的每个分区上创建的索引,局部索引的索引键必须包含分区键
B. 不论是全局索引,还是局部索引,其索引键中都会包含主键
C. 全局索引是在表的所有分区上创建的索引,全局索引只能有一个分区
D. 当需要保证全局唯一时,必须创建全局索引
对于在分区表上创建索引,以下说法正确的是:
A. 局部索引是在表的每个分区上创建的索引,局部索引的索引键必须包含分区键
B. 不论是全局索引,还是局部索引,其索引键中都会包含主键
C. 全局索引是在表的所有分区上创建的索引,全局索引只能有一个分区
D. 当需要保证全局唯一时,必须创建全局索引
都是错的吧
学习一下
不是
关于对于在分区表上创建索引的讨论很有价值,特别是在以下说法正确的是场景下,合理使用回复是关键。
A错: 非前缀索引可以没有分区键
原文“ * 前缀索引:当分区索引表的分区键是索引列的左前缀时,该索引称为前缀索引。这不同于 MySQL 长字符串的前缀索引。例如,索引表 idx 建立在 c1 和 c2 列上,如果该索引表的分区键为 c1,那么该索引称为前缀索引;如果该索引表的分区键为 c2 或者其他列,则称为非前缀索引。
B错
C错:
原文:“全局索引拥有自己独立的分区定义,不需要跟主表一样”
D错
原文:
“ 唯一索引可以定义为全局索引或者是局部索引。
唯一索引定义为局部索引的时候,需要满足一定的条件,即索引键要覆盖索引分区键。 例如,表 A 上有个唯一索引 idx(c1,c2,c3),索引表 idx 按照 (c1,c2) 进行分区,这样能保证相同的 (c1,c2) 一定能进入同一分区,只需要在单个分区内维护唯一性。如果索引表 idx 按照 (c2,c4) 进行分区,索引没有覆盖分区键,就不能通过局部索引来保证分区之间索引键的唯一性,这样的局部唯一索引不能被创建。”
https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000005685989
选D。
对的
学习一下
A吧
学习
没毛病,优秀
正确答案:D
局部索引仅能保证单分区内唯一,无法跨分区全局去重;如果业务需要整表全局唯一性约束,必须创建全局索引。
签到…