Answer:
with so as
(select distinct s.supplierid,
s.name as suppliername,
o.orderid,
o.totalamount,
o.orderdate
from orderdetails od
join orders o on od.orderid = o.orderid
join products p on od.productid = p.productid
join suppliers s on p.supplierid = s.supplierid)
select distinct supplierid,
suppliername,
NTH_VALUE(totalamount, 5) over (partition by supplierid
order by totalamount desc, orderid desc rows between unbounded PRECEDING and unbounded following) as fifthlargestamount,
NTH_VALUE(orderdate, 5) over (partition by supplierid
order by totalamount desc, orderid desc rows between unbounded PRECEDING and unbounded following) as fifthlargestdate
from so
order by suppliername;