10bet网址
MySQL内部手册


23.16.4解析关键信息

许多索引方法都传递一个名为*关键以标准格式标识要读取的索引项。您的存储引擎将需要提取存储在键中的信息,并将其转换为其内部索引格式,以识别与索引关联的行。

键中的信息是通过遍历键获得的,键的格式与中的定义相同表- > key_info(指数)- > key_part [part_num]

与键一起传递的还有处理程序方法keypart_map参数来指示键的哪些部分出现在关键参数。keypart_map是一个ulonglong位图,每个关键部分1位:1keypart [0], 2为keypart [1], 4分keypart [2]等等。如果有一点keypart_map时,此键部分的值将出现在键缓冲区中。最后一个关键部件后面的位并不重要,所以~0可以用于所有关键部件。目前只支持关键字前缀。也就是说,Assert ((keypart_map + 1) & keypart_map == 0)

一个keypart_mapkey_range结构records_in_range (),以及keypart_map值直接传递给index_read ()index_read_idx (),index_read_last ()方法。

年长的处理者有一个key_len参数代替keypart_map.的key_len值为a使用uint按前缀匹配时,表示前缀长度。