sql >> データベース >  >> RDS >> Mysql

ツリービューループクエリを作成する

    現在ツリーを格納している方法では、1つの純粋なSQLクエリでツリー全体を取得することはできません。ツリーをフェッチするには、他の言語(C#、ループをサポートするストアドプロシージャなど)でループを作成する必要があります。

    これ ツリーを保存する方法(ツリーのフェッチやツリーからのアイテムの削除を含む)を操作する方法を説明する素晴らしい記事です。

    さらに興味深いことに、この記事では、実行するデータベーステーブルにツリーを格納する方法についても説明しています。 1回のクエリでツリー全体をフェッチできるようにします。これは、ツリートラバーサルの事前注文 と呼ばれます。 。あなたはより多くの情報のためにそれを調べることができます。 C#の実装 を見つけました 。これには、現在使用している方法よりもいくつかのロジックが含まれますが、最小のツリーを除くすべてのツリーに対してよりパフォーマンスが高くなります。




    1. OOP PHP PDO私の最初のプロジェクト、私は正しくやっていますか?

    2. 致命的なエラー:未定義の関数mysql_connect()の呼び出し

    3. サブクエリの結果でLIMITを使用することは可能ですか?

    4. ストアドプロシージャを使用してMySQLのテーブルをシャッフルします