Zamówienie według jest dynamiczne, ale porządek sortowania jest statyczny.Oracle dynamiczne DESC i ASC w kolejności według
SELECT ...
Order By CASE WHEN InputParam = 'PRICE' THEN OFFER_PRICE END DESC,
CASE WHEN InputParam = 'ENDING SOON' THEN EXPIRY_DATE END DESC,
CASE WHEN InputParam = 'DISCOUNT' THEN DISC_PERCENTAGE END DESC,
CASE WHEN InputParam = 'SAVING' THEN SAVING END DESC
Teraz muszę się upewnić, że kolejność sortowania jest również dynamiczna. Czy jest jakiś sposób na zrobienie dynamicznego porządku sortowania w powyższym zapytaniu?
Twój czarodziej .. –
Data wygaśnięcia to kolumna datetime. Powyższa metoda nie działa w tym celu. –
@Aseem: możesz mieć dwie PRZYPADKI na swoją datę Zamówienie (jedną dla ASC, jedną dla DESC) lub przekonwertować datę na liczbę (dni) i użyć zmiennej, aby wybrać właściwą kolejność. –