2014-04-22 23 views
0

內做嵌套排序已經使用了密集秩組在表中的物品進入3天桶。例如:4月22-24日將是「緊了」起來,並分配優先級爲4我如何DENSE_RANK

enter image description here 問:

  1. 我需要根據QTYORDERED上做Planning_package進一步的整理。優先級4的最終結果如下。 enter image description here

我用來執行排序的sql如下。任何人都可以提供幫助,可以幫助進一步對planning_package進行排序 **

select SALESORDERID, ITEM, PLANNING_PACKAGE, GENERIC_PACKAGE, QTYORDERED, 
DMD_TYPE_CD, ORDER_TYPE_CD, PRIORITY_NBR,PROMISEDAVAILDATE, 
dense_rank() 
over 
(
order by 
    round((
      case when dmd_type_cd = 'Netted Forecast' 
       then greatest(PROMISEDAVAILDATE, (to_date('22-Apr-14','DD-Mon-YY')+31)) 
       else PROMISEDAVAILDATE end 
      - (to_date('22-Apr-14','DD-Mon-YY')+1))/3, 0) desc 
) as priority 

from 
TEST_SALESORDER_TABLE; 

回答

0

您可以指定多個列由在order by clause排序 - 在你的情況下,將.... order by priority , qtyordered desc

如果priority是列的位置,你可以訂購一個表達式好。