非关键字段的数据库索引

时间:2016-03-02 14:05:30

标签: database sorting indexing data-structures database-schema

我对this answer有疑问 我也发布了这个问题作为对该答案的评论,但没有得到任何回应。

它指出,在非关键字段上建立索引的情况下,架构将是:

Field name       Data type      Size on disk
firstName        Char(50)       50 bytes
(record pointer) Special        4 bytes

我的问题是,为什么需要再次存储firstName?指针不够吗?我们只需更改排序比较函数即可在(*pointer).firstName上进行比较,而不是firstName

1 个答案:

答案 0 :(得分:0)

引用@wildplasser给出的答案为comment

  

理论上,不需要:char(50)字段可以从中拉出   基础。在实践中,这将导致基础和   要从磁盘上拉出的索引,要花费更多的IO带宽和   bufferspace。