【发布时间】:2016-03-02 14:05:29
【问题描述】:
我有一个关于this answer的问题。
我还发布了这个问题作为对该答案的评论,但没有得到任何回复。
它指出,在对非关键字段进行索引的情况下,架构将是:
字段名称 数据类型 磁盘大小 名字 Char(50) 50 字节 (记录指针)特殊 4 字节我的问题是为什么需要再次存储firstName?指针还不够吗?我们只需将排序比较函数更改为在(*pointer).firstName 上进行比较,而不是在firstName 上进行比较。
【问题讨论】:
-
理论上是不需要的:char(50) 字段可以从基表中提取。在实践中,这会导致 基表和索引从磁盘中拉出,从而消耗更多的 IO 带宽和缓冲区空间。
-
@wildplasser 有道理!
-
@wildplasser 由于我没有得到任何答案,您想将您的评论转换为答案,以便我可以关闭问题吗?
标签: database sorting indexing data-structures database-schema