2011-03-09 62 views
0

我有一個使用MPTT方法存儲分層數據的MySQL表。該表還有一個存儲每行的短字符串標識(slug)的列。通過路徑查詢MPTT樣式表的最有效方法是什麼?

我希望能夠查詢表,以找到正確的行,當給出一個由這些slu comprised組成的路徑。即給定路徑foo/bar我想找到它以最有效的方式表示的行。

我可以在單個SQL查詢中執行此操作嗎?如果不是,將多個查詢串起來以獲得正確結果的最有效方法是什麼?我在我的應用程序中使用PHP,如果這不能純粹用SQL查詢完成,那麼這可能是相關的。

回答

0

如果您想快速讀取並且不介意慢寫入,請將路徑緩存到另一列中。您只需使用其父級的緩存路徑更新已更改的節點(及其子節點)即可使路徑緩存更有效。

相關問題