怎么样物化路径 http://www.dbazine.com/oracle/or-articles/tropashko4 design?
CREATE TABLE trie (
path VARCHAR(<maxdepth>) PRIMARY KEY,
...other attributes of a tree node...
);
存储像“stackoverflow”这样的单词:
INSERT INTO trie (path) VALUES
('s'), ('st'), ('sta'), ('stac'), ('stack'),
('stacko'), ('stackov'), ('stackove'), ('stackover'),
('stackover'), ('stackoverf'), ('stackoverflo'),
('stackoverflow');
树中的物化路径是字符本身的前缀序列。这也构成了主键。 varchar 列的大小是要存储的 trie 的最大深度。
我想不出有什么比这更简单直接的了,而且它保留了高效的字符串存储和搜索。