Skip to main content
Announcements
Qlik Connect 2024! Seize endless possibilities! LEARN MORE
cancel
Showing results for 
Search instead for 
Did you mean: 
SSQ081592
Explorer II
Explorer II

項目毎の最大値の算出 - スクリプト

初めて投稿させてただきます。

QVでアプリを作成しており、苦戦しているため、皆様の知識をお借りしたく思います。

下記のようなデータから、スクリプト内でID毎に価格が最大値を取った連番を取得したいのですが、何か方法はあるのでしょうか?

ID、連番、価格

クッキー| 1 | 100

クッキー| 2 | 120

マシュマロ| 1 | 250

シュママロ | 2 | 200

シュママロ | 3 | 270

シュママロ  | 4 | 250

チョコレート| 1 | 65

チョコレート| 2 | 65

チョコレート| 3 | 55

クッキー| 2 | 120

シュママロ | 3 | 270

チョコレート| 1 | 65

このようになる方法を探しています。

チャート関数ではAGGRが似ているような機能と思いますが、スクリプト上では使用できないようですので。

どなたかお分かりになる方、教えていただけると助かります。

1 Solution

Accepted Solutions
ShoNakajima
Employee
Employee

以下のスクリプトでいかがでしょうか?

GroupByでIDをまとめ、価格が最大のものと、それに該当する連番のうち最小のもの(チョコレートで1,2が同価格であるが、小さい方の「1」をピックアップしたいという意図を想定)を抽出しています。

[Sample]:
Load * Inline [
ID,連番,価格
クッキー, 1 , 100
クッキー, 2 , 120
マシュマロ, 1 , 250
マシュマロ, 2 , 200
マシュマロ, 3 , 270
マシュマロ, 4 , 250
チョコレート, 1 , 65
チョコレート, 2 , 65
チョコレート, 3 , 55
];

[Sample_Max]:
Load 
	ID,
    FirstSortedValue(DISTINCT [連番],-[価格]),
    Max(価格)
Resident Sample
Group by ID;

View solution in original post

1 Reply
ShoNakajima
Employee
Employee

以下のスクリプトでいかがでしょうか?

GroupByでIDをまとめ、価格が最大のものと、それに該当する連番のうち最小のもの(チョコレートで1,2が同価格であるが、小さい方の「1」をピックアップしたいという意図を想定)を抽出しています。

[Sample]:
Load * Inline [
ID,連番,価格
クッキー, 1 , 100
クッキー, 2 , 120
マシュマロ, 1 , 250
マシュマロ, 2 , 200
マシュマロ, 3 , 270
マシュマロ, 4 , 250
チョコレート, 1 , 65
チョコレート, 2 , 65
チョコレート, 3 , 55
];

[Sample_Max]:
Load 
	ID,
    FirstSortedValue(DISTINCT [連番],-[価格]),
    Max(価格)
Resident Sample
Group by ID;