我有一個表具有以下字段:如何在SQLite表中索引樹?
id VARCHAR(32) PRIMARY KEY, parent VARCHAR(32), name VARCHAR(32)
父是一個外鍵引用同一個表。這個結構生成一棵樹。這棵樹應該複製一個文件系統樹。問題是,從一條路徑上查找一個id是slooow。所以我想建立一個索引。這樣做的最好方法是什麼?
示例數據:
id parent name -------- ----------- ---------- 1 NULL root 2 1 foo 3 1 bar 4 3 baz 5 4 aii
將指數爲:
id parent name -------- ----------- ---------- 1 NULL root 2 1 root/foo 3 1 root/bar 4 3 root/bar/baz 5 4 root/bar/baz/aii
我目前考慮使用臨時表和手動運行從對建立索引的一系列插件的代碼。 (我把它設置爲臨時的原因是,如果這個數據庫是從Windows系統訪問的,路徑需要反斜槓,而從* nix它需要正斜槓)。有沒有其他的選擇?