問題タブ [dense-rank]

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

php - 同点を認めて採点されたすべての科目について、特定の科目で特定のユーザーのランクを取得する方法

今、私は次のように特定の学生の結果をすべて取得するクエリを持っています

そして、私は次の結果を持っています

しかし、私の目的は、各科目で特定の学生のランクを取得することであり、次のように、最初のSQLステートメントのwhileループ内にサブクエリがあります

その後、次の結果が得られました

しかし、クエリで同点をチェックし、次の順序で結果を取得する必要があります

私はmysqlプログラミングの初心者です助けてください

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

sql-server-2008 - 既存のテーブルのため、SQL DENSE_RANKは適切ではありません-valが変更されたときに最小/最大の日付を順番に取得する方法

既存の @table があります

日付順は重要です。各 Val シーケンスの最初と最後の日付を確認する必要があります。

Val 列は、次の 3 つのエントリで変更されます。

そして戻ります:

シーケンスごとに最小/最大の日付を返すように SQL を取得するにはどうすればよいですか? 私は示す必要があります:
すなわち

通常の Min/Max クエリを実行すると、

これは、val が第 1 ピリオドで 1、第 2 ピリオドで 2、第 3 ピリオドで再び 1 であることを示していません。

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

oracle - keep dense_rank を Oracle クエリから postgres に変換する

次のOracleクエリをPostgresに変換しようとしています

問題は、このブロックを変換する方法がわからないことです:

このブロックの目的は、最新のステータスを取得することであり、まったく同じ時間の場合 (可能です!)、上記の順序に従ってステータスを割り当てます。

ステータスは「COMPLETED」である必要があるため、クエリは他の行の中でも次の行を返す必要があります。

クエリを2つに分割しようとしました:

その後

しかし、行ごとに 2 番目のクエリを 1 回実行する必要があるため、パフォーマンスの問題が発生しています。

これは postgres のテーブル スクリプトです。

そしていくつかのデータ:

クエリを 1 つだけにするために、 keep dense_rankブロックを postgres に模倣する方法はありますか?

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

sql-server-2008 - 一部の列に同じデータを持つ行に同じランクを与え、データが変更されたときにランクを上げる方法 SQL

SQL クエリで Dense_Rank を使用して、一部の列で同じデータを含む行をランク付けし、次の行で変更されたデータが見つかったときにランクを上げようとしています。私はこのクエリで成功しました:

しかし、ランクは順番に来るのではなく、メインのSQLに適用される順序に従って来ます。スクリプトの出力は次のとおりです。

ここに画像の説明を入力

スクリーンショットからわかるように、ID 列と Date1 列に同じデータを持つ行に同じランク (P_Key) を与えていますが、メインの Order By のためにどこでも順序がずれています。メインの「Order By」によって適用されるのと同じ順序で他の行が表示され、「P_Key」のシーケンスが1から開始され、その後順次増加するようにします。どうすればそうできますか?

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

sql - SQL Number - Row_Number() - 行番号の繰り返しを許可

私は SQL Server 2008 を使用しています。このデータは、Day および ManualOrder で並べられたように見えるクエリで返されます...

私がやろうとしているのは、このデータを日、次に ManualOrder で並べ替えることです...しかし、行カウンターが必要です (これを MapPinNumber と呼びましょう)。問題は、同じ日の同じ緯度/経度に再び遭遇したら、この行カウンターを繰り返したいということです。次に、緯度/経度が異なる場合は、次の行の次の行カウンターで続行できます。最終結果で Day、ManualOrder の順序を維持する必要があります。

これらをマップ上にプロットします。この番号は、ManualOrder の順序でプロットするピン番号を表す必要があります。このデータはドライバーのルートを表し、ドライバーはスケジュールで 1 日に同じ緯度/経度に複数回行く可能性があります。たとえば、彼は車で Walmart に行き、次に CVS に行き、次に再び Walmart に戻り、次に Walgreens に行きます。必要な MapPinNumber 列は 1、2、1、3 である必要があります。彼は月曜日に複数回ウォルマートに行きますが、彼が運転する最初の場所でもあったため、常にマップのピン #1 になります。

計算する必要がある MapPinNumber 列の結果が必要なものは次のとおりです。ROW_NUMBER と RANK で考えられるすべてを試してみましたが、気が狂いそうです! いCURSORの使用を避けようとしています。