Как уже предлагалось, вы, вероятно, захотите изменить порядок запроса, чтобы отсортировать его в другом направлении, чтобы вы фактически получили первую строку. Тогда вы, вероятно, захотите использовать что-то вроде
SELECT TOP 1 ...
если вы используете MSSQL 2k или более ранней версии или совместимый с SQL вариант
SELECT * FROM (
SELECT
ROW_NUMBER() OVER (ORDER BY key ASC) AS rownumber,
columns
FROM tablename
) AS foo
WHERE rownumber = n
для любой другой версии (или для других систем баз данных, поддерживающих стандартную запись), или
SELECT ... LIMIT 1 OFFSET 0
для некоторых других вариантов без стандартной поддержки SQL.
См. Также этот вопрос для дополнительного обсуждения выбора строк. Использование агрегатной функции max () может быть или не быть быстрее в зависимости от того, требуется ли для расчета значения сканирование таблицы.