問題タブ [hierarchy]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
9 に答える
26620 参照

sql - SQL - 階層を保存してナビゲートする方法は?

データベース内の階層情報をモデル化し、取得するためにどのような方法を使用していますか?

0 投票する
5 に答える
1593 参照

sql - 階層内のノードを並べ替える SQL

隣接リスト モデル (以下を参照) を使用する「タスク リスト」データベースがあるので、各「タスク」は無制限のサブタスクを持つことができます。テーブルには「TaskOrder」列があるため、すべてがツリービューで正しい順序でレンダリングされます。

指定された親のすべての子ノードを選択し、兄弟が削除されたときに TaskOder 列を更新する SQL ステートメント (MS-SQL 2005) はありますか?

何か案は?ありがとう。

0 投票する
6 に答える
12594 参照

.net - .NET Framework クラス ダイアグラムはどこにありますか?

フレームワーク構造のファイル (写真、pdf、または印刷用の他のタイプのファイル) が必要です。.Net フレームワークを学習する際に非常に役立ちます。

0 投票する
9 に答える
6347 参照

sql - カテゴリが階層内のいずれかのカテゴリに属する​​製品を選択します

カテゴリの FK を含む製品テーブルがあります。カテゴリ テーブルは、各カテゴリが親カテゴリを持つことができる方法で作成されます。例:

選択したカテゴリがプロセッサの場合、Intel、Pentium、Core 2 Duo、Amd などの製品を返すという選択クエリを作成する必要があります...

データベース内のすべてのカテゴリの階層にすべてのカテゴリを格納し、where 句に「IN」を含める、ある種の「キャッシュ」を作成することを考えました。これが最善の解決策ですか?

0 投票する
8 に答える
12484 参照

database - ネストされた集合モデルを使用して保存されたツリーをどのようにソートしますか?

ネストされたセット モデルとは、ここで説明されていることを意味します。

ユーザー定義の階層に「カテゴリ」を格納するための新しいシステムを構築する必要があります (より適切な言葉は思いつきません)。ネストされたセット モデルは、書き込みではなく読み取り用に最適化されているため、それを使用することにしました。残念ながら、ネストされたセットの調査とテスト中に、ソートされたノードを持つ階層ツリーをどのように表示するかという問題に遭遇しました。たとえば、階層がある場合:

次のように表示されるように並べ替えます。

捏造が研究の前に現れることに注意してください。

とにかく、長い検索の結果、「ツリーを多次元配列に格納してソートする」、「ツリーを再ソートし、ネストされたセットモデルにシリアル化する」などの回答が表示されました(言い換えています...)。いずれにせよ、最初の解決策は RAM と CPU の恐ろしい浪費であり、どちらも非常に有限のリソースです。2 番目の解決策は、多くの面倒なコードのように見えます。

とにかく、(ネストされたセットモデルを使用して)方法を理解することができました:

  1. SQL で新しいツリーを開始する
  2. ツリー内の別のノードの子としてノードを挿入します
  3. ツリー内の兄弟ノードの後に​​ノードを挿入します
  4. SQL から階層構造を持つツリー全体をプルする
  5. 深さの制限の有無にかかわらず、階層内の特定のノード (ルートを含む) からサブツリーをプルします
  6. ツリー内の任意のノードの親を見つける

したがって、#5 と #6 を使用して、必要な並べ替えを行うことができ、並べ替えられた順序でツリーを再構築するためにも使用できると考えました。

しかし、私が学んだことをすべて見てきたので、#3、#5、および #6 を一緒に使用して、ソートされた挿入を実行できることがわかりました。ソートされた挿入を行った場合、常にソートされます。ただし、並べ替え基準を変更したり、別の並べ替え順序が必要な場合は、振り出しに戻ります。

これは、ネストされたセット モデルの制限でしょうか? その使用は、出力のクエリソートを阻害しますか?

0 投票する
7 に答える
416 参照

c# - ゲームアイテムのクラス階層に関するアドバイス

私は MUD エンジンを作成しており、拡張可能である必要があるゲーム オブジェクト モデルを開始したばかりです。

主に私がやったことは面倒だと感じているので助けが必要ですが、よりうまく機能する別の解決策が思いつきません.

というクラスと というMudObject別のクラスContainerがあります。コンテナには複数の を含めることができますMudObjectsが、MudObjectそれ自体ですが、MudObjectコンテナが何に含まれているかを知る必要があります。

したがって、それらは次のようになります。

(これらは単なる例であり、一部の修飾子とアクセス修飾子、プロパティなどが見落とされていることに注意してください)

これだけでも面倒に思えますが、何か他のものをミックスに追加しましょう。

Itemは、MudObjectすべてのビジュアル アイテム (武器など) が継承されるものですが、これらの一部はコンテナ (チェストなど) である必要もあります。しかし、C#には多重継承などはありません。したがって、インターフェースに行き着きます。最良の選択は、コンテナーをインターフェースにすることです(私が見る限り)しかし、そうしたくない理由がありました。つまり、コンテナに を追加するMudObjectと、コンテナがMudObjects.containedBy値を更新します。

これを機能させるアイデアはありますか、それとも物事を複雑にしすぎるという罠に陥っていますか?
もしそうなら、他に何を提案できますか?

0 投票する
2 に答える
5340 参照

.net - Linq to Sql - 祖先を検索するための階層クエリ

EmployeeId が与えられた場合、Linq to Sql クエリを作成して従業員の先祖をすべて見つけるにはどうすればよいですか? 各 EmployeeId には、関連付けられた SupervisorId があります (以下を参照)。

たとえば、EmployeeId 6 (Frank Black) の祖先のクエリは、Jane Doe、Bob Smith、Joe Bloggs、および Head Honcho を返す必要があります。

必要に応じて、すべての従業員のリストをキャッシュして、パフォーマンスを向上させることができます。

アップデート:

タスクを達成するために、次の大まかなメソッドを作成しました。これは、employee.Supervisor 関係をルート ノードまでたどります。ただし、これは従業員ごとに 1 つのデータベース呼び出しを発行します。より簡潔またはよりパフォーマンスの高い方法を持っている人はいますか? ありがとう。

0 投票する
4 に答える
5912 参照

performance - Oracle 階層クエリのパフォーマンス

Oracle 階層クエリを使用して、潜在的に非常に大きなツリー構造をモデル化することを検討しています (無限の幅と 30 以上の深さの可能性があります)。私の理解では、階層クエリはSQLを再帰的に結合する方法を提供しますが、同等のクエリを手動で作成する場合に比べて、実際のパフォーマンスは向上しません...これは事実ですか? オラクルの階層クエリを使用して、パフォーマンスに関して、人々はどのような経験をしましたか?

0 投票する
5 に答える
895 参照

.net-3.5 - .Net 3.5 で階層構造を表すためのコレクション型

私は、メモリ内の階層構造を表現するためのさまざまな方法を試してきました。これにより、上と下の両方でシンプルかつ効率的な横断が可能になり、祖先と子孫の関係を発見できます。私が持っているオプションの提案や例はありますか? ここで役立つ.Net 3.5のコレクションタイプはありますか?

0 投票する
3 に答える
1932 参照

php - フラットなデータから PHP で階層的な HTML タグを作成する

PHP でデータを使用してタグの階層セットを構築するにはどうすればよいですか?

たとえば、ネストされたリスト:

これは、次のようなフラット データから構築されます。

それも例のようにきれいにフォーマットされていればいいのですが。