1. ROW_NUMBER() 定義: ROW_NUMBER() 関数は、select によってクエリされたデータを並べ替え、各データにシリアル番号を追加するために使用されます。学生のスコアをランク付けするために使用することはできず、通常はページング クエリに使用されます。 例: 1.1 生徒の成績の分類 ここで、numberは各生徒のシリアル番号であり、studentScore(スコア)に従って逆順に降順になります。 1.2 2人目の生徒のスコア情報を取得する ここで使用されるアイデアは、ページングクエリのアイデアです。元の SQL の外側に 2. ランク() 定義: RANK() 関数は、その名前が示すように、特定のフィールドをランク付けできるランキング関数です。ROW_NUMBER() と異なるのはなぜですか? ROW_NUMBER() は並べ替え用です。同じスコアの学生がいる場合、ROW_NUMBER() はそれらを順番に並べ替え、シリアル番号は異なりますが、Rank() は同じではなく、ランキングは同じになります。以下の例を見てみましょう。 2.1 生徒の成績の順位付け ここで、ROW_NUMBER() と RANK() が同じであることがわかります。生徒の得点が異なるため、順位付けと並び順は同じです。以下を変更すると違いがわかります。 2 人の生徒のスコアが同じ場合、変更が起こります。 RANK() は 1 2 2 ですが、ROW_NUMBER() は依然として 1 2 3 です。これが RANK() と ROW_NUMBER() の違いです。 3.密度_RANK() 定義: DENSE_RANK() 関数もランキング関数です。フィールドをランク付けする点では RANK() に似ています。では、RANK() との違いは何でしょうか?例をご覧ください: 例: DENSE_RANK() と RANK() の違いはランキングの連続性です。DENSE_RANK() は連続的ですが、RANK() はジャンプランキングなので、一般的に使用されるランキング関数は RANK() です。 4.NTILE() 定義: NTILE() 関数は、順序付けられたパーティション内の行を指定された数のグループに分散します。各グループには、いわゆる「パーティション」のように 1 から始まる番号が付けられ、複数のゾーンに分割され、ゾーン内にゾーンがいくつあるかが示されます。 例: ここでは、クエリが 3 回実行されています。1 回目は 1 つの「ゾーン」に分割されたため、クエリ結果の番号はすべて 1 でした。2 回目は 2 つのゾーンに分割され、クエリ結果は 1 1 2 でした。これは、最初の「ゾーン」には 1 1 という 2 つの番号付きデータがあり、2 番目の「ゾーン」にはデータ 2 のみがあることを意味します。 この時点で、SQL ランキングの問題の説明は終了です。次回は、SQL ランキング ステートメントについて詳しく紹介します。 4つの主要なSQLランキング関数ROW_NUMBER、RANK、DENSE_RANK、NTILEの使用に関するこの記事はこれで終わりです。SQLランキング関数ROW_NUMBER、RANK、DENSE_RANK、NTILEの使用に関する詳細については、123WORDPRESS.COMの以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも123WORDPRESS.COMをよろしくお願いいたします。 以下もご興味があるかもしれません:
|
<<: Ubuntu インストール cuda10.1 ドライバ実装手順
>>: Vue はアップロードされた画像に透かしを追加する機能を実装します
必要Windows システムでも Linux システムでも、さまざまな理由でパスワードを忘れてしまう...
Linux システムで .sh ファイルを実行する方法は 2 つあります。たとえば、ルート ディレク...
目次1. はじめに2. MySQLルーターを構成する2.1 MySQLルーターのインストール2.2 ...
シナリオ: 検査文書には n 個の検査詳細があり、検査詳細には n 個の検査項目があります。実装効果...
目次親コンポーネントと子コンポーネント間でパラメータを渡すルーティングパラメータステータスの改善コン...
pre 要素は、フォーマット済みのテキストを定義します。 pre 要素で囲まれたテキストでは、通常、...
.net 開発に関しては、Microsoft の SQL Server データベースに精通しており、...
目次1. コンポーネント2. キープアライブ2.1 問題点2.2 キープアライブを使って解決する2....
目次クラスコンポーネントイベントバインディング関数コンポーネントイベントバインディング要約するRea...
上に示すように、ナビゲーションは上部に固定されており、左右にスライドしてさらにオプションをクリックで...
body{font-size:12px; font-family:"宋体";}...
最終的な効果は次のようになります。アニメーションは2つのステップに分かれていますランニング軌道を開発...
異なるデータベースで DROP TABLE を書く方法1.MySQL 存在する場合はテーブルを削除 ...
この記事では、VMware WorkstationにKylinをインストールする方法を参考までに紹介...
数日前、同僚からMySQLのインデックスについて質問を受けました。大体わかっているのですが、まだ練習...