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 はアップロードされた画像に透かしを追加する機能を実装します
この記事では、CentOS 7.4 サーバーに Apache をインストールする方法と、インストール...
最初のステップは、Python のバージョン番号とインストール パスを確認することです。 上記のビュ...
1. instanceofの使用法instanceof演算子は、コンストラクター関数のprototy...
ディスプレイ定義IDテーブルに定義された自動増分IDが上限に達した場合、次のIDを申請する際に得られ...
1. Dockerネットワークを作成する docker ネットワーク作成 kong-net 2. デ...
序文多くの場合、ユーザーが自分のデータに対して実行する操作に基づいて何かを行う必要があります。たとえ...
<br />前回の記事:Webデザイン講座(7):Webページ制作の効率化1:必要な小言...
ここでは比較的簡単なインストール方法のみを紹介します。 1. yumを使用してインストールするyum...
序文ページを作っていく上で、ページレイアウトに関する内容に遭遇することが多く、面接でも聞かれることも...
この記事では、MySQL無料インストール版(zip)のインストールと設定のチュートリアルを参考までに...
MySQLデータベース設計の8つの最適化方法の詳細は次のとおりです。 1. 最も適切なフィールド属性...
注: 私はCentosを使ってdockerをインストールしていますステップ1: Dockerをインス...
一昨日、本番環境でGROUP_CONCAT関数を使用して選択したデータが切り捨てられ、最大長が102...
3回の暗記により、大量の資材の正確な場所と目的を記憶でき、その使いやすさが向上します。 これは単なる...
序文トランザクション データ ディクショナリとアトミック DDL は、MySQL 8.0 で導入され...