| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Составление SQL-запросов > Как вывести 6 последних записей начиная с самой но |
| Автор: vlad275 11.11.2009, 18:10 |
| Как вывести 6 последних записей начиная с самой новой? Такой запрос выводит шесть последних новостей, но начинает не с последней новости а с самой старой из этих шести. Как поправить? SELECT id, header, short, date_format(date_of_add, '%d.%m.%Y') AS doa FROM news WHERE hidden = 0 ORDER BY date_of_add DESC LIMIT 6? |
| Автор: ТоляМБА 11.11.2009, 18:14 | ||
|
| Автор: vlad275 11.11.2009, 20:04 | ||
Странно, в админке новости выводятся так: http://radikal.ru/F/s56.radikal.ru/i152/0911/ae/15f81dea8798.png.html А на сайте новости выводятся следующим образом. Сначала идут новости за последний день, потом за пред-последний и .д. НО в новостях за последний день выводятся первыми старые новости(утренние) http://host-park.ru/ Нужно date_format() убрать? |
| Автор: vlad275 11.11.2009, 21:14 |
| Времени добавления данных нет. Дата в таком формате 2009-03-30 Наверное нужно не LIMIT 7 а TOP 7? |
| Автор: Zerstroer 12.11.2009, 21:30 |
| LIMIT и TOP эквивалентные операторы. Используются только в разных ветках SQL. LIMIT - в MySQL (SQL92) а TOP в MS-SQL (T-SQL). vlad275, У тебя база на чем висит? В общем рецепт такой: перегнать datetime в binary или timestamp (как это сделать - задай вопрос на пост ниже или в гугль)... ((В MySQL) проще сделать...) И потом ORDER BY по этой колонке. Если у тебя нет времени занесения новости... То TOP или LIMIT будет тебе рандомно все доставать... Я бы в таком случае добавил на новости, которые на одну дату зарегистрированы в табличке колонку с порядком сортировки... И сортерить потом по ней... Иначе сортерить по какой либо другой колонке, например теме новости... |
| Автор: vlad275 13.11.2009, 02:02 |
| Понял. Стоит MySQL. Только доступа к ней нет - я дорабатываю сайт чужой компании. Рекомендации своему куроводителю дал ;-) |