• I appreciate your suggestions. I tried to manage and want to share you that. I removed CTE and put order by on same set of columns that were defined on Row_number(). I selected only number of rows which was required(like top 10k).. same like below..

    SELECT

    top 10000

    --ROW_NUMBER() OVER (ORDER BY art.AlertId DESC, t.AgreedTime ASC, t.TradeId ASC, t.TradeEventId ASC) AS [RowNumber]

    from

    order by ORDER BY art.AlertId DESC, t.AgreedTime ASC, t.TradeId ASC, t.TradeEventId ASC