問題タブ [hierarchical-query]

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 投票する
2 に答える
17160 参照

sql - GROUP BY 句の後の Oracle CONNECT BY 句

階層クエリとウィンドウ関数を使用して、またはOracle でシミュレートする方法を示す、この興味深い記事をここで見つけました。wm_concat()group_concat()

これはあまり読みやすい解決策ではないと思いますが、特に節が節のCONNECT BY .. STARTS WITH来るため、非常に興味深いものです。仕様によると、これは不可能です。簡単なクエリを使用してこれを試してみましたが、うまくいきます。次の 2 つのクエリは、同じ結果を返します。GROUP BY

これは文書化されていない機能ですか? それとも、利便性のための構文の無関心ですか? それとも、2 つのステートメントの動作が微妙に異なるのでしょうか?

0 投票する
1 に答える
228 参照

sql - 階層クエリ - パスの一部を取得する

Oracle 11g には、ツリーからすべてのリーフ ノードを取得する階層クエリがあり、うまく機能します。ただし、リーフ ノードに移動する際に、パスの各部分を個別にキャプチャする必要があります。それを行う方法はありますか?私のクエリまたは2番目のクエリを変更して??

どんな助けでも本当に感謝しています!

これが私のクエリです:

したがって、現在、次のような出力が得られます: id, superid, name1, >>name1>>name2>>name3>>name

どっちがいい。しかし、何とか各ノード名を取得しようとしています (XML で出力する必要があるため)。

したがって、現在、各リーフノードの XML は次のようになります

どういうわけか次のようなXMLを取得できるようにしたいと思います

....またはそのようなもの、基本的にはツリー階層を XML に出力できるようにしたいと考えています。

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

sql - OracleSQLで接続する

次のテーブルがあるとします。

以下のクエリが何をするのかに興味があります

このコードがemployeeから、、を選択することを理解したので、この行から選択を開始しますが、この行がempnomanager_idをするのか理解できませんでした。enameempno=1

これは次と同じですか:

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

sql - Oracle の階層クエリで WHERE-CLAUSE を実行する方法

Oracle 階層クエリでは、Oracle ドキュメントの Connect-By 演算子の後に WHERE-CLAUSE を評価する必要があります。

しかし、複雑な状況があります。オラクルが言うように、WHERE-CLAUSE に JOIN スタイルの修飾が含まれている場合、Connect-By 演算子の前に Join-Style 修飾を評価する必要があり、1 つの関係のみを参照する他の非結合スタイルが評価されます。 Connect-By 演算子の後に評価されます。

問題は、WHERE-CLAUSE の条件を 2 つの部分に区別する方法です。1 つは Connect-By 演算子の前に評価され、もう 1 つは Connect-By 演算子の後に評価されます。

したがって、上記の計画に示すように、WHERE、f1=b1 and (b2 = 1 or f1=b2 and b1=1 or f2=b1+1) and f1 is not null の条件は、次の 2 つの部分になります。

one: filter(("B2"=1 OR "B1"=1) AND "F1" IS NOT NULL) --> 接続後に評価

その他: filter("F1"="B2" OR "F2"="B1"+1) and access("F1"="B1") --> connect-by の前に JOIN-ON として評価

では、WHERE 句の条件を区別する方法と、connect-by の前後に適用される WHERE 句から 2 つの部分を形成する方法を誰が説明できますか?

ありがとう。

ありがとう。

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

php - PostgreSQL 階層、カテゴリ ツリー

ENV : postgresql-8.4

カテゴリ ツリーを作成しようとしています。基本的に、次のような最終出力を期待しています:

例:

テーブル構造は

p>

これまでのところ、私はこれを持っていますが、機能していません。どんな助けでも大歓迎です:

データベースからのサンプル

0 投票する
1 に答える
830 参照

oracle - オラクルでコミット時にリフレッシュしてマテリアライズドビューとして階層クエリを作成する方法

Oracle 10gでREFRESH ON COMMITを使用してマテリアライズドビューとして階層クエリを作成する可能性があるかどうか教えてください。

CONNECT_BY を使用してみましたが、これは REFRESH ON COMMIT では機能しません。

基になるデータが変更されたときにビューを自動的に更新する他の可能性はありますか?

または、REFRESH ON COMMIT で動作する CONNECT_BY に代わるものがあるのでしょうか?

ヒントやヘルプを事前にありがとう。

0 投票する
1 に答える
2273 参照

mysql - Oracle の「start with...connect by」に相当する標準 SQL クエリは何ですか?ただし DBMS 固有ではありません

Oracle の階層構文に相当する一般的な SQL があるかどうかを知りたいですstart with...connect by。どのデータベースでも使用できるものが必要です。これが私が意味するクエリの種類です(OracleのサンプルEMPテーブルを使用):

再帰的な共通テーブル式は、多くのデータベース実装で機能しますが、MySQL では機能しません。

0 投票する
1 に答える
60 参照

sql - 階層データに対して WHERE NOT IN を実行するにはどうすればよいですか?

ポイント間のパスのリストであるテーブルがあります。特定のポイントからのポイント ID と範囲 (ポイントの数) を含むリストを返すクエリを作成したいと考えています。しかし、これを理解しようとして一日を費やしましたが、どこにも行っていません。これをどのように行うべきか知っている人はいますか? (私はこれを MS-SQL 2005 用に書いています)

0 投票する
1 に答える
173 参照

sql - サイクルを使用したクエリ (Oracle 10 XE および 11 XE)

ロードマップ(接続都市のリスト)があります:

パスを取得する必要があります: ベルリン=>ローマ=>ニューヨーク=>ダラス

バリエーション 1:

帰り: =>ローマ=>ロンドン

バリエーション 2:

Return: ERROR ORA-01436 ユーザー データの CONNECT BY ループ

階層クエリで期待される結果を得る方法はありますか?

0 投票する
1 に答える
1461 参照

oracle - PLSQL - 事前に接続 (多対多)

connect by ステートメントを使用して再帰データを並べ替えるクエリがあります。私が抱えている問題は、1 対多または多対 1 の関係がときどきあり、対処方法がわからないことです。

だから説明する。ソース列とターゲット列があります。約 99% の場合、これらは単一の一意の ID です。残念ながら、残りの 1% の時間では、列の 1 つで ID がグループ化されています。この表は、フローチャート タイプのツールをフラットに表現したものであるため、多くの出力を持つ分割と決定、および多くの入力を持つ可能性のあるマージがあります。

テーブルのデータをロードする際にこれに対処するために、listagg 関数を使用して一意の ID を連結します。したがって、「1254143,2356334,6346436,3454363,3462354,442356」のようなターゲット値になります。

したがって、私の connect by ステートメントが実行されると、これらのシナリオの 1 つになるまでは完全に機能し、その時点で停止します (これは当然のことです)。
何らかの方法で IN または INSTR を使用して機能させることができると思いましたが、まだ運がなく、オンラインで何も見つかりません。

任意の助けをいただければ幸いです.....