HHH-6914: Improve LIMIT/OFFSET handling in SQL Server

 * ROW_NUMBER() OVER should use original ORDER BY if it exists
 * use ROW_NUMBER() OVER when original ORDER BY has multiple clause to avoid
   SQLServerException: A column has been specified more than once in the order
   by list. Columns in the order by list must be unique.