SQL Select Bottom Records

У меня есть запрос, по которому я хочу получить самые старые X-записи. В настоящее время мой запрос выглядит примерно так:

SELECT Id, Title, Comments, CreatedDate
FROM MyTable
WHERE CreatedDate > @OlderThanDate
ORDER BY CreatedDate DESC

Я знаю, что обычно я удаляю ключевое слово DESC, чтобы изменить порядок записей, однако в этом случае я все же хочу сначала получить записи, упорядоченные с самым новым элементом.

Поэтому я хочу знать, есть ли какие-либо средства для выполнения этого запроса, чтобы я отсортировал самые старые элементы X таким образом, чтобы самый новый элемент был первым. Я также должен добавить, что моя база данных существует на SQL Server 2005.

ReactJs | Supabase | Добавление данных в базу данных
ReactJs | Supabase | Добавление данных в базу данных
Это и есть ваш редактор таблиц в supabase.👇
Понимание Python и переход к SQL
Понимание Python и переход к SQL
Перед нами лабораторная работа по BloodOath:
10
0
19 016
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Ответ принят как подходящий

Почему бы просто не использовать подзапрос?

SELECT T1.* 
FROM
(SELECT TOP X Id, Title, Comments, CreatedDate
FROM MyTable
WHERE CreatedDate > @OlderThanDate
ORDER BY CreatedDate) T1
ORDER BY CreatedDate DESC

Вставьте запрос. Вы берете верхний x при сортировке в порядке возрастания (т.е. самый старый), а затем повторно сортируете их в порядке убывания ...

select * 
from 
(
    SELECT top X Id, Title, Comments, CreatedDate
    FROM MyTable
    WHERE CreatedDate > @OlderThanDate
    ORDER BY CreatedDate 
) a
order by createddate desc 

Другие вопросы по теме