The above SQL statements(TOP & CTE) will fetch the "N"th record from the bottom and not the "N" th record.
Following is the modification to the satements:
SELECT TOP 1 * FROM (SELECT TOP 5 * FROM UserTable Order By 1 ASC) TEMP Order By 1 DESC
;WITH CTEs
AS
(SELECT DENSE_RANK() OVER(ORDER BY COL1 ASC) 'Nth',* FROM TABLE1)
SELECT * FROM CTEs WHERE NTH = 5
Confirm the changes..