特定の条件に基づいて行を分類するプロセスに悩まされています。私は皆さんからのご支援を得て、これを手に入れたいと思っています! 基本的には、いくつかの特定の数式を適用してテーブルに2つの新しい列を作成しようとしています。これらの列は、各年のボリュームのランキングと、top 3 claims
に含まれる各プラクが2014
またはnot
に含まれるかどうかを指定することによって分類するための列です。以下の例では、light blue
で強調表示されている列が作成したい列です。oracle sqlのランキングと条件文でのカウント
私のクエリは以下の通りです - 今、私はそれらの括弧内で動作していないようfrom
、group by
とhaving
上記の二つの最後の行のための書き込みコードに問題があります。助けてください!!
select
fiscal_year,
prac,
count(*) "CLAIMS",
sum(paid_amount) "COST",
row_number() over (group by fiscal_year order by count(*) desc) "Annual Rank by Claims",
case
when row_number() over (having fiscal_year = '2014' order by count(*) desc) < 4
then 'YES'
else 'NO'
end "PRAC TOP 3 IN CLAIMS 2014"
from mys.mv_claim
where category = 'V'
group by fiscal_year,
prac
/
画像の列に基づいて、COSTに基づいて各年内にランクを作成します。そうですか? – Vashi
こんにちは、私はCLAIMSに基づいて毎年ランクをつけたいと思っています。ありがとうございました! – SanK
"DI"、 "FO"、 "SN"はそれぞれ年に2回表示されています。 "DI"と "FO"の場合、 "PRAC TOP 3 IN CLAIMES 2014"は3回 "YES"と3回 "NO"となります。あなたはどうやってこれらを分けているのですか? – Abecee