このチュートリアルに従って、MySql で隣接リスト モデルを使用したいと考えて います: クエリを使用した MySQL での階層データの管理:
SELECT t1.name AS lev1, t2.name as lev2, t3.name as lev3, t4.name as lev4
FROM category AS t1
LEFT JOIN category AS t2 ON t2.parent = t1.category_id
LEFT JOIN category AS t3 ON t3.parent = t2.category_id
LEFT JOIN category AS t4 ON t4.parent = t3.category_id
WHERE t1.name = 'ELECTRONICS';
私の質問は、つまり、クエリが返された場合:
| ELECTRONICS | TELEVISIONS | TUBE | NULL |
| ELECTRONICS | TELEVISIONS | LCD | NULL |
| ELECTRONICS | TELEVISIONS | PLASMA | NULL |
この結果データ + リーフ ノード ID (category_id) の追加列を取得するようにクエリを変更する方法は?
ID | ELECTRONICS | NULL |NULL | NULL |
ID | ELECTRONICS | TELEVISIONS |NULL | NULL |
ID | ELECTRONICS | TELEVISIONS |TUBE | NULL |
1 .ID = 電子機器の ID
2 .ID = TELEVISIONS の ID
3 .ID = TUBE の ID
完全なリスト ツリーとスタンドアロンの親を表示し、それらの ID を表示したい...