私が求めていることが可能かどうかはわかりませんが、これが私の状況です。次のような構造のテーブルがあります。
+--------------------------------------------------+
| id | parent_id | name | category | ....
+--------------------------------------------------+
| 0 | -1 | item0 | 1 |
| 1 | 0 | item1 | 1 |
| 2 | 0 | item2 | 1 |
| 3 | 2 | item3 | 1 |
| 4 | 2 | item4 | 1 |
| 5 | -1 | item5 | 1 |
+--------------------------------------------------+
-1 の parent_id は、親のない「ベース」アイテムであることを意味します。各項目には、より多くの情報の列があります。次のようにネストされたカテゴリ内のすべてのアイテムを何らかの方法で出力する必要があります。
item0 => item1
=> item2
=> item3
=> item4
item5
それが理にかなっているのかどうかはわかりませんが、うまくいけばそうなるでしょう!
これを行う唯一の方法は、クエリを作成してすべての「ベース」アイテムを取得し (parent_id = -1 の行をクエリする)、結果のすべての行を反復処理し、parent_id が現在と等しい行をクエリすることです。行の ID を取得し、ベース アイテムの子がなくなるまでこのプロセスを繰り返します。
より良い方法はありますか?
ありがとう!!