簡體   English   中英

帶有案例陳述的密集等級

[英]Dense Rank with Case Statement

Amount大於120並且Stage =W時,我想根據Amountdate進行排名。 在屏幕截圖中, “first_120”列顯示了正確的排名,但從 3 開始,因為前兩行有 120 並且不符合標准。 有沒有辦法從 1 而不是 3 開始排名?

在此處輸入圖像描述

我正在使用以下計算

case when Amount>120 and stage='W' then
dense_rank() over(partition by stage,owner order by Amount,date)  end as first_120

也將您的 case 語句添加到分區 by。

CASE WHEN amount > 120 AND stage = 'W' 
AND owner = 12345 
THEN  DENSE_RANK() OVER(PARTITION BY stage, owner, CASE WHEN amount > 120 
AND stage = 'W' THEN 1 ELSE 2 END ORDER BY Amount, date) END AS First_120

在此處輸入圖像描述

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM