У меня есть следующие данные, которые мне возвращают. Мне нужно получить определенную или максимальную сумму всей комиссии по налогу за один repnbr. Столбец qtrlycommrep - это значение, к которому я пытаюсь добраться, но не могу. Для repnbr c590 мне нужно получить сумму комиссии 854,66, которая является максимальной для каждого таксона.
Что я делаю не так?
Любая помощь будет высоко ценится!
Вот что я пробовал до сих пор. Использование Row_number
select distinct
sub.Repnbr
, (sub.QtrLYComm) as qtrlycommrep
from (
select distinct repnbr, QtrLYComm
, rn = row_number() over(partition by repnbr order by QtrLYComm desc)
from #qtrly
) sub
where sub.rn = 1
Перекрестное применение
select distinct
#qtrly.repnbr
, x.QtrLYComm as qtrlycommrep
from #qtrly
cross apply (
select top 1
*
from #qtrly as i
where i.repnbr = Repnbr
order by i.qtrlycomm desc
) as x;
внутреннее соединение
select
#qtrly.repnbr, #qtrly.qtrlycomm as qtrlycommrep
from #qtrly
inner join (
select maxvalue = max(qtrlycomm), repnbr
from #qtrly
group by repnbr
) as m
on #qtrly.repnbr = m.repnbr
and #qtrly.qtrlycomm = m.maxvalue;
упорядочение по row_number
select top 1 with ties
#qtrly.repnbr, #qtrly.qtrlycomm as qtrlycommrep
from #qtrly
order by
row_number() over(partition by repnbr
order by qtrlycomm desc)