gpt4 book ai didi

sql - MPTT 表的建议索引

转载 作者:搜寻专家 更新时间:2023-10-30 19:42:27 24 4
gpt4 key购买 nike

我只是使用改进的预序树遍历 (MPTT) 构建一个表来存储分层数据——你知道的:每个节点存储 leftright ID 以查找其后代。我使用的是 CakePHP 建议的模型,它与标准方式不同,每行都包含 parent_id

这是建议的表结构:

CREATE TABLE categories (
id INTEGER(10) UNSIGNED NOT NULL AUTO_INCREMENT,
parent_id INTEGER(10) DEFAULT NULL,
lft INTEGER(10) DEFAULT NULL,
rght INTEGER(10) DEFAULT NULL,
name VARCHAR(255) DEFAULT '',
PRIMARY KEY (id)
);

我以前从未使用过这种样式,也不知道它是如何被搜索到的,我想知道我应该为哪些字段建立索引?仅主键是否足够,还是我应该包括 lftrght

最佳答案

您将始终使用左列,但我经常需要找到所有叶节点。

WHERE lft = (rgt -1)

所以我通常只用 lft, rgt 对创建一个索引。

关于sql - MPTT 表的建议索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1597923/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com