MySQLのランキング機能
P粉310754094
P粉310754094 2023-08-24 00:03:12
0
2
448
<p>顧客のランキングを調べる必要があります。ここでは、要件に従って、対応する ANSI 標準 SQL クエリを追加します。 MySQL への変換を手伝ってください。 </p> <pre class="brush:php;toolbar:false;">SELECT RANK() OVER (PARTITION BY Gender ORDER BY Age) AS [性別によるパーティション], ファーストネーム、 年、 性別 FROM 人</pre> <p>MySQL にランキングをクエリする関数はありますか? </p>
P粉310754094
P粉310754094

全員に返信(2)
P粉757432491

これは、パーティション上の高密度レベルを行に割り当てる一般的なソリューションです。ユーザー変数を使用します:

リーリー

変数の割り当ては CASE 式内で行われることに注意してください。これにより (理論的には) 評価順序の問題が解決されます。 IS NOT NULL は、データ型変換と短絡の問題を処理するために追加されました。

PS: これは、タイをチェックするすべての条件を削除することで、パーティション上の行番号に簡単に変換できます。

リーリー

dbデモフィドル

いいねを押す +0
P粉218361972

1 つのオプションは、次のようなランキング変数を使用することです:

リーリー

(SELECT @curRank := 0) セクションでは、別の SET コマンドを使用せずに変数を初期化できます。

###テストケース:### リーリー ###結果:### リーリー
いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート