ホームページ > データベース > SQL > SQLでランク関数を使用する方法

SQLでランク関数を使用する方法

下次还敢
リリース: 2024-05-02 02:27:16
オリジナル
558 人が閲覧しました

SQL の RANK() 関数は、クエリ結果セット内の行をランク付けするために使用され、グループまたはテーブル内の各行の相対位置を表すランク値を割り当てます。使用法: RANK() OVER ([PARTITION BY グループ化フィールド] ORDER BY 並べ替えフィールド)。パラメータ: PARTITION BY グループ化フィールド (オプション): 結果セットをグループ化し、各グループを個別にランク付けします。 ORDER BY 並べ替えフィールド: ランク付けの基準となる列。戻り値: 行の相対ランキングを表す整数。

SQLでランク関数を使用する方法

SQL での RANK() 関数の使用

RANK() 関数は、クエリ結果を評価するために SQL で使用されます。集中した行がランク付けされます。グループまたはテーブル全体内の各行の相対位置を表すランキング値を割り当てます。

使用法:

<code class="sql">RANK() OVER ( [PARTITION BY 分组字段] ORDER BY 排序字段)</code>
ログイン後にコピー

パラメータ:

  • PARTITION BY グループ化フィールド: Can選択する。結果セットをグループ化し、各グループを個別にランク付けします。
  • ORDER BY 並べ替えフィールド: ランキングの基準となる列。

戻り値:

行の相対的な順位を表す整数。

#例:

売上テーブル内の各製品の売上ランキングをクエリします:

<code class="sql">SELECT product_id, product_name,
RANK() OVER (PARTITION BY product_id ORDER BY sales_count DESC) AS sales_rank
FROM sales_table;</code>
ログイン後にコピー

結果:

product_idproduct_namesales_rank 1製品 A1#1製品 B#22製品 C13製品 D1

注:

    行の値が同じ場合、ランクも同じになります。
  • 値が重複している場合など、行のランキングにギャップが生じる可能性があります。
  • RANK() 関数は DENSE_RANK() 関数に似ていますが、後者は重複値のランキングをスキップしません。

以上がSQLでランク関数を使用する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート