Вы можете использовать функцию Rank
.
SELECT SUM(PrintQty) FROM (
Select PCCI.BWPrintQty AS PrintQty, RANK() OVER (
PARTITION BY PCCI.ItemTrackingNo
ORDER BY PCCI.ClickMonth desc
) as [Rank]
from PrintCusClickRecord PCCI
where Convert(Date,pcci.ClickMonth) < Convert(Date,'2019-01-01')
and PCCI.OrderID!= 129012 and ISNULL(PCCI.IsDelete,0)!=1
and PCCI.ItemTrackingNo in('C397P800803'
'G145P901553'
,'G146P300748'
)
) S
WHERE S.[Rank] = 1
Запрос выдает значение, например:
Click record for C397P800803
-------------------------------
300, 1
200, 2
100, 3
Click record for G145P901553
-------------------------------
400, 1
250, 2
150, 3
Click record for G146P300748
-------------------------------
500, 1
450, 2
350, 3
Затем он фильтрует записи с рангом, равным 1 => 300, 400, 500
, и вычисляет их сумму.