我使用密集排名将表格中的项目分组为3天。例如:4月22日至24日将紧张起来'一起并将优先级指定为4。
问题:
我用来执行排序的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 :(得分:0)
您可以指定多个列来按order by clause
排序 - 在您的情况下,它将是.... order by priority , qtyordered desc
如果priority
是表达式,您也可以按列位置排序。