問題タブ [oracle-analytics]
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.
sql - Oracle分析関数-FIRST_VALUEを使用して不要な行を削除する
Oracle関数FIRST_VALUEは、次の2つの質問に基づいて使用する必要があると思います。SQL-
最大値の列を持つ行を選択する方法
Oracle:最大日付のレコードを取得する
組織に関連する人々を表す3つのテーブルがあります。各組織には親組織がある場合があります。ここで、ORG.PARENTはORG.IDへの外部キーです(したがって、テーブルはそれ自体を参照します)。1人が複数のグループに関連付けられている場合があります。
人
ORG
PERSON_TO_ORG
人が関連付けられているグループを一覧表示したいので、次のクエリを使用しました。
...それは私に与えます:
A-2が2回表示されることに注意してください。ただし、グループを2回表示したくありません。グループをツリーの最下位レベル、つまり最上位の値にのみ表示するようにします。運が悪かったのにFIRST_VALUEを使用してみた方法は次のとおりです。A-2(およびその他)が2回表示されます。
これは、Pro Oracle SQLのFIRST_VALUEの例に似ているように見えますが、パラメータをどのように調整しても機能しないようです。
特定のグループのレベル値が最も高い(つまり、ツリーの最下位)行のみを返すにはどうすればよいですか?
sql - Oracle Analytics ウィンドウ
次の表を考えると
および次のクエリ:
次の結果が得られます。
期待される:
RUNNING_BALANCE が負の数として返されるのはなぜですか? 明らかな abs() 以外に、どうすればそうしないことができますか?
oracle11g - 内部結合で rank() を使用するにはどうすればよいですか?
CHEESE テーブルを FRESHNESS と結合して、各チーズ ID の max(seq_no) が MOLD であるチーズの CHEESE および FRESHNESS コードを取得したいと考えています。
rank() を使用する場合、どこで FRESHNESS に参加しますか?
目的のシーケンス番号を取得するために使用しているコードは次のとおりです。
sql - 日付間のギャップを埋めるためにレコードを複製する
私は本当に奇妙なことをする必要があります。それは、製品価格の投稿日のギャップを埋めるために偽のレコードを作成することです。
実際、私のシナリオはそれよりも少し複雑ですが、製品/日付/価格に簡略化しています。
このテーブルがあるとしましょう:
これらの記録で:
レコードを選択すると、次のように返されます。
今日が2012年4月21日であると仮定すると、新しい価格が掲載されるまで、毎日各価格を繰り返すビューが必要です。このような:
それを行う方法はありますか?他の補助テーブル、トリガー、PL / SQLプログラミングを実際に使用することはできません。ビューを使用して、これを実行する必要があります。
これはオラクル分析を使用して実行できると思いますが、私はそれに精通していません。このhttp://www.club-oracle.com/articles/analytic-functions-i-introduction-164/を読み込もうとしましたが、まったくわかりませんでした。
sql - Oracle Analyticsによる複雑なSQL問合せの改善
私はこの特に複雑な問題を扱っています (少なくとも私にとっては、あなたが数学オタクなら、私を判断しないでください!)。
基本的に、現在の在庫レベルの記録と、店舗内外のすべての在庫の動きのリストという 2 つのものを持っています。昨年の任意の時点での特定のオブジェクトの在庫レベルを理解できるように、2 つの部分を組み合わせようとしています。
SQL の最初の部分は、特定の店舗のすべてのオブジェクトの昨年のすべての在庫の動きと現在の在庫レベルを結合します。
したがって、基本的にすべての株式の動きとその日付のリストが返され、それをこのステートメントで使用します。
その後、頭を包み込むことができないように見えるいくつかの問題があります。
最初-2番目のステートメントでは、365日のリスト、その日の選択されたオブジェクトの動き、および過去の在庫レベルを返します。オブジェクトIDをすべての行に表示することはできません。
第二に、これを実行して、その日の対応する在庫レベルですべてのオブジェクトの 365 日間の移動を取得できるようにしたいと考えています。これには、私が現在持っているよりも Oracle Analytics についての理解を深める必要があると思います。
どんな助けでも大歓迎です。
sql - 支払いを分配するための Oracle SQL クエリ
バッチ プロセスの一部として、複数の請求書トランザクションで支払いを分配しようとしています。請求書と支払いトランザクションは、トランザクション レジスタとして機能する同じテーブルに保持されます。
だから例えば。トランザクション登録テーブルには次のものがあります。
このユーザーの合計 3500 の支払いを受け取り、最初の請求書から始めて、支払いを各請求書に分配し、新しいテーブルにダンプするクエリを探しています。
新しいテーブルの最終結果は次のようになります。
PL/SQL ブロックでループを使用しないようにしています。どんなコメントでも大歓迎です!
sql - Sql (Oracle 上) 日別エージング レポート
オラクルでエイジングレポートを書くのに助けが必要です. レポートは次のようになります。
セクションごとにクエリを作成し、次のようにすべての結果を結合できます。
Oracle分析関数またはパフォーマンスを向上させる他のクエリを使用するより良い方法があるかどうか疑問に思っていましたか?
サンプルデータ:
oracle11g - SQL 分析関数: プロパティを使用しないことによるパーティションの rank()
現在、顧客名でパーティションに対応する別のランクを取得しようとしています
出力:
期待される出力:
oracle - Oracle 分析関数を使用して、別の列に対して max を使用して列からデータをフェッチする
max(timestamp) を使用して、異なるアカウント (acc) ごとに bal 列と res 列の合計を取得する必要があります。これを見てください。
私が必要とするのはMAX(timestamp) <= 1430238763
、次のsum: bal + res
ように acc でグループ化されたものです。
サブクエリを使用してそれを行う方法は知っていますが、Analytics を試してみたいと思います。
よろしく