階層ツリーをSQLデータベースに保存する必要があります。このサイトで検索した後、いくつかの解決策を見つけましたが、それでも助けが必要です。
つまり、入力信号のタイプ、ツリー内の場所、および時間に基づいて、出力にルーティングする必要のある「入力」があります。
もう少し複雑にするために、MSSQL Server 2005、MySQL、およびSQLliteで動作する必要があるという要件があります。いつかSQLlite要件を削除できるかもしれませんが、今のところはそれに対処する必要があります。
ツリーで実行される最も一般的なアクションは、情報が添付されているノードを下からルートノードまで検索する必要があることです。
これを実装する最も簡単な方法は、親への参照を含むテーブルを作成し、最初に一番下のノードを選択して、情報がそれに添付されているかどうかを確認することです。そうでない場合は、親を選択して繰り返します。
シンプルで特別なデータベース機能は必要ありませんが、多くのクエリが必要です。最大6レベルのノードのネストが一般的であり、最大で14レベルが予想されます。
ノードに添付されている情報には、入力のタイプと私が見つけなければならない出力との間の時間(日/週の期間)に依存するリンクが含まれています。例の下に; 「ノード4」の入力1がアクティブ化されている場合、出力は「4」である必要があります。同じノードで入力8がアクティブ化されている場合、出力は「0」である必要があります。
この種の構造に関するより多くの背景情報を探す必要がある場所、またはこの問題のデータベース構造を設計する方法を知っている人はいますか?
編集:
若いボブからの答えに応えて、私はテストをします。しかし、誰かが私に選択(...)を実行するアイデアを持っている場合、存在しない場合は親に対して繰り返し、以下同様に1つのクエリで非常に興味があります。