Как я могу получить последние 10 записей - PullRequest
3 голосов
/ 09 ноября 2010

У меня есть БД с + - 60000 записей, мне нужно получить последние 10 введенных записей, это можно сделать через postgres? Я размышлял, может быть, установив смещение 50 990 и предел 10 или что-то подобное, но не уверен, будет ли это эффективным?

Ответы [ 2 ]

6 голосов
/ 09 ноября 2010

Возможно, что-то вроде следующего:

SELECT * FROM your_table
ORDER BY your_timestamp DESC
LIMIT 10

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

2 голосов
/ 09 ноября 2010
ORDER BY id DESC LIMIT 10

Если id проиндексирован, это будет очень эффективно. Естественно, также может быть метка времени.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...