有向非巡回グラフについて、以下の方法で部品データベースをまとめています。 http://www.codeproject.com/Articles/22824/A-Model-to-Represent-Directed-Acyclic-Graphs-DAG-o
MySQL に変換したそのページの SQL クエリを使用して、データ セットを構築できます。
以前はネストされたセット モデルを使用していましたが、削除が問題になることがわかりました。このモデルを使用してツリーをトラバースする方法に関する情報を見つけることができません。選択した親ノードからの子孫を表示し、リーフ ノードを識別するための html ツリーを作成できる必要があります (jstree を使用します)。
それが役立つ場合は、ネストされたセット モデルからコードを投稿できます。私が立ち往生しているSQLであるhtmlの助けは必要ありません。
必要なクエリに関する情報をどこで見つけることができるか知っている人はいますか?
編集: コメントに続いて、Bill Karwins の閉鎖モデルにより密接に関連するものに適応したいと思います。http://www.slideshare.net/billkarwin/models-for-hierarchical-data ただし、スライド 49 ~ 50 では、出力が十分に提供されていないように見えるノードの子孫を選択する必要があることに気付きましたシンプルな木を描く。以前は、ネストされたセット モデルを使用して、左から右、上から下にトラバースする同様の出力を得ることができました。説明してみます。
Item | Depth
1 | 0
2 | 0
3 | 1
6 | 2
7 | 0
9 | 1
これにより、SQL がより操作しやすい方法で子孫の順序をリストしたため、ツリーを描画することができました。サブツリーの COUNT を使用して「深さ」を作成したと思います。ここで役立つ場合は、クエリを掘り下げます。
あなたのご親切に感謝します。