SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 09.12.2010 11:01:46

darbl4
Участник
Зарегистрирован: 09.12.2010
Сообщений: 5

Как эффектиивнее всего выбрать последние значения по дате

Доброго времени суток форумчане и администрация!
Появилась задача нужно из таблицы где есть дата в формате timestamp, комментарий, имя пользователя и заголовок коментария
выбрать последние n комментариев

тоесть

name | date | text | title

Хочу выбрать последдние пять. В голову пришло только выбрать все упорядочить по дате и лимитировать но понятно что тащить всю таблицу глупость

Спасибо всем кто ответит! очень жду.

Неактивен

 

#2 09.12.2010 12:02:38

Neval
Гуру
Откуда: Киев
Зарегистрирован: 11.03.2008
Сообщений: 449

Re: Как эффектиивнее всего выбрать последние значения по дате

Так лимитировать надо на уровне БД, а не на уровне языка программирования smile
ORDER BY `date` DESC LIMIT 5
Естественно при этом нужен индекс на `date`.


Человек без чувства юмора - не серьёзный человек wink

Неактивен

 

#3 09.12.2010 12:37:24

darbl4
Участник
Зарегистрирован: 09.12.2010
Сообщений: 5

Re: Как эффектиивнее всего выбрать последние значения по дате

так об этом и говорю.. выберутся то все записи, будут упорядочены а потом уже отрежется 5 записей...? или не прав?

Неактивен

 

#4 09.12.2010 13:19:48

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5842

Re: Как эффектиивнее всего выбрать последние значения по дате

Если есть индекс на `date`, то выберутся только 5.

Неактивен

 

#5 10.12.2010 09:18:50

darbl4
Участник
Зарегистрирован: 09.12.2010
Сообщений: 5

Re: Как эффектиивнее всего выбрать последние значения по дате

хм а если индекса нет? И сделать его нельзя.. движок сторонний, есть какоето решение?

Неактивен

 

#6 10.12.2010 09:44:09

Neval
Гуру
Откуда: Киев
Зарегистрирован: 11.03.2008
Сообщений: 449

Re: Как эффектиивнее всего выбрать последние значения по дате

Если у Вас есть возможность править запросы, то уж точно можно сделать индекс wink Ну разве-что прав пользователя не будет достаточно, хотя это маловероятно smile

А другого вроде не дано, только перебором всех записей.


Человек без чувства юмора - не серьёзный человек wink

Неактивен

 

#7 10.12.2010 16:32:06

darbl4
Участник
Зарегистрирован: 09.12.2010
Сообщений: 5

Re: Как эффектиивнее всего выбрать последние значения по дате

не могу менять структуру таблицы sad

хм ладно спасибьо раз другого способа нет..
а можно оффтоп. не подскажетье хорошую литературу по mysql ? Хочу все таки подробнее ознакомится.

Неактивен

 

#8 10.12.2010 17:36:35

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5842

Re: Как эффектиивнее всего выбрать последние значения по дате

darbl4 написал:

а можно оффтоп. не подскажетье хорошую литературу по mysql ? Хочу все таки подробнее ознакомится.

http://sqlinfo.ru/forum/viewtopic.php?id=1369
Ещё документация - http://dev.mysql.com/doc/refman/5.1/en/

А, отвечая на форуме, разберете кучу реальных примеров из жизни. Это, без иронии, лучше любой книжки.

Неактивен

 

#9 10.01.2011 17:52:39

darbl4
Участник
Зарегистрирован: 09.12.2010
Сообщений: 5

Re: Как эффектиивнее всего выбрать последние значения по дате

лучше поздно чем никогда , спасибо

Неактивен

 

#10 11.01.2011 16:49:12

jmadhead
Участник
Зарегистрирован: 11.01.2011
Сообщений: 10

Re: Как эффектиивнее всего выбрать последние значения по дате

По поводу справочников могу подсказать
http://www.javaprobooks.ru/elektronnie- … mysql.html
Там же в разделе справочники SQL

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson