Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Вывод последних строк таблицы
 
 автор: azubka   (01.06.2013 в 15:04)   письмо автору
 
 

Помогите, пожалуйста, решить небольшую задачку.

Есть таблица с тремя полями. В одном из них хранится дата добавлении записи. Как можно одним SQL-запросом осуществить вывод последних десяти добавленных записей?

Вариант с ORDER BY DESC LIMIT 10 не подходит, т.к. переворачивает таблицу (из-за обратной сортировки).

Спасибо.

  Ответить  
 
 автор: cheops   (01.06.2013 в 16:22)   письмо автору
 
   для: azubka   (01.06.2013 в 15:04)
 

Можно воспользоваться вложенным запросом
SELECT
  *
FROM
  (SELECT
     *
   FROM
     tbl
   ORDER BY
     datetime_at DESC
   LIMIT 10) AS tbl
ORDER BY
  datetime_at

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

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования