いいえ、少なくともMySQLではありません。これは、隣接リストモデル の最大の制限の1つです。 。
限られた回数だけ自己参加を続けることができますが、それは醜く、厄介で、無制限の部門をカバーしていません。また、アプリケーション内のすべてのデータをダウンロードし、ツリーを構築して、アプリケーション内のパスを見つけることもできます。
SQL Server 2005、Postgres 8.4、Oracle 11gなどの一部のDBMSは、共通テーブル式<を使用した再帰クエリをサポートしています。 / a> WITH
キーワード。この機能を使用すると、このようなクエリを簡単に作成できますが、残念ながら、MySQLは再帰クエリをまだサポートしていません。
代替モデル(入れ子集合モデル)について説明している次の記事を確認することをお勧めします。 a> )、MySQLでの再帰操作をより簡単に(可能に)します:
さらに、 @BillKarwin による次のプレゼンテーションも確認することをお勧めします。 、Stack Overflowの定期的な寄稿者:
プレゼンテーションで説明されているクロージャテーブルモデルは、ネストされたセットの非常に有効な代替手段です。彼はこのモデルについて、SQLアンチパターン でさらに詳しく説明しています。 本(このトピックの章からの抜粋 。