2
我已經OppTable如何使用多個條件
ID actualclosedate status
--------------------------------------
1 10-March Won
2 11-June Lost
3 13-July Open
我有階段變化
--------------------------------------
ID stage createdon
--------------------------------------
1 Propsect 1-Jan
1 Qualify 15-Jan
1 Develop 25-Jan
2 Qualify 9-Feb
2 Develop 7-March
3 Prospect 9-April
3 Prospect 9-April
我如何填寫新的列中的NULL值生成的基於填充鉛窗口空值在多個標準。 例如:如果奧普是韓元/ LOST把截止日期 如果奧普是開放式認沽今天日期
預期結果:
--------------------------------------
OppID Stage createdon newcolumn
--------------------------------------
1 Propsect 1-Jan 15-Jan
1 Qualify 15-Jan 25-Jan
1 Develop 25-Jan 10-March ---(closedate for Wonn Opp1)
2 Qualify 9-Feb 7-March
2 Develop 7-March 11-june ---(closedate for lost Opp2)
3 Prospect 9-April 10-April
3 Qualify 10-April 4/2/2017----(todaydate for Open Opp3)
使用此查詢,將會得到我要開實際結束時間,但我想今天日期
Select *
,NewColumn = COALESCE(Lead(A.createdon) over (Partition By A.ID Order By A.CreatedOn),B.actualclosedate)
From stagechange A
Join OppTable B on A.ID=B.ID
此查詢不編譯,我很害怕。什麼是「B.actualclosedate」? –
如果你今天想要打開狀態,你可以在'COALESCE'內使用'CASE WHEN status ='Open'THEN Current_Date ELSE B.actualclosedate END)'而不是'B.actualclosedate'。 – dnoeth