注目キーワード
  1. 予実管理

順位を設定する

130-80 | データ編集・追加


店舗・製品分類ごとの売上金額について、順位を3位まで設定します。
 ※krewDataでは順位を設定する機能はありません。そのため、グループ化コマンドを利用して売上金額の最大値を取得し順位「1位」を設定、1位のレコードを除いた中から再度最大値を取得し順位「2位」を設定、といった処理を繰り返します。

入力アプリのフィールド構成

売上実績アプリ
  • 各店舗の製品分類ごとの売上が登録されている
     ⇒店舗、製品分類ごとに1レコード存在している

1.店舗毎に売上金額が1位のレコードを特定する

  1. 入力アプリコマンドを追加し、「売上実績」アプリを指定する
     ・使用するフィールド:「店舗」「製品分類」「売上金額」
  2. グループ化コマンドを追加し、店舗毎の売上金額の最大値を取得する
     1.グループ化する項目フィールドを選択:店舗
     2.集計する値が保存されているフィールドを選択:売上金額
     3.集計した値を保存するフィールド名を入力:売上金額
     4.集計方法を選択:最大値
  3. 定数の追加コマンドを追加し、順位フィールドを作成し値に「1位」を設定する
  4. アプリ結合コマンドを追加し、集計元レコードと順位を設定したレコードを結合する
     ・結合方法:左外部結合
     ・結合キー:店舗(売上実績)=店舗(順位設定)
           売上金額(売上実績)=売上金額(順位設定)

    ⇒店舗毎に売上金額が最大のレコードの順位に「1位」が設定された

店舗毎に売上金額が2位のレコードを特定する

  1. フィルタコマンドを追加し、「順位」フィールドが未設定のレコードのみに絞り込む
     ・順位=(等しい) 空白
  2. フィールド選択コマンドを追加し、以下のフィールドのみを選択する。
     ・対象フィールド:店舗、製品分類、売上金額
  3. グループ化コマンドを追加し、現在のレコードの中で売上金額の最大値を取得する
     1.グループ化する項目フィールドを選択:店舗
     2.集計する値が保存されているフィールドを選択:売上金額
     3.集計した値を保存するフィールド名を入力:売上金額
     4.集計方法を選択:最大値
  4. 定数の追加コマンドを追加し、順位フィールドの値に「2位」を設定する
  5. アプリ結合コマンドを追加し、集計元レコードと順位を設定したレコードを結合する
     ・結合方法:左外部結合
     ・結合キー:店舗(フィールド選択(2))=店舗(順位設定(2))
           売上金額(フィールド選択(2))=売上金額(順位設定(2))

    ⇒店舗毎に売上金額が最大のレコードの順位に「2位」が設定された

店舗毎に売上金額が3位のレコードを特定する

 ※売上金額が2位のレコードを特定した時と同様の手順を行います。
  手順を簡略化するため、既存のコマンドを複製します。

  1. フィルタコマンド~アプリ結合コマンドをドラッグして選択します
  2. 「複製」を選択します
  3. 複製したコマンドを「アプリ結合」の後に接続します
  4. 定数を追加コマンドの設定を開き、順位の値を「3位」に変更します


    ※3位以降も順位を設定する場合には、こちらの「コマンドの複製」~「順位変更」の処理を追加で行ってください。

順位が設定されたレコードを抽出する

  1. レコード結合コマンドを追加し、順位を設定した後のアプリ結合コマンドのレコードを結合する
     結合方法:すべてのフィールドを含める
  2. フィルタコマンドを追加して、「順位」が設定されているレコードのみ抽出する
     順位 ≠(等しくない) 空白

    3.フィールド選択コマンドを追加して、不要なフィールドを除外する
     選択フィールド:店舗、製品分類、売上金額、順位

設定結果

店舗毎の売上金額上位3位のレコードに順位が設定された

サンプルファイルのダウンロードはこちら
https://download.krew.mescius.jp/study/krewdata-drill/basic/dt130-80rank.zip

演習をお客様のkintone環境で試す

krewDataのはじめ方
実際の動作を確認できるテンプレートを公開しています。
こちらの記事でご紹介した内容をご自身の環境で試したい方はダウンロードしてご利用ください。