Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > PHP: Базы Данных > как сделать вывод с конца таблицы


Автор: began 28.1.2011, 04:55
Здравствуйте!
Нужна помощь...
Есть таблица mysql в которой данные не отсортированы. поле id не используется
каждая новая запись добавляется в конец таблицы.
Вопрос: как сделать вывод с конца таблицы? Без сортировки  по возрастанию и убыванию.

Автор: enoff 28.1.2011, 05:06
Добавить поле, по которому будут сортироваться данные и повесить на него индекс. (int PRIMARY KEY auto_increment)
И да, раз сортировка нужна, то нужно и поле, по которому можно сортировать.

Без поля:
Сделать простой SELECT * FROM `table_name`
на php  получить все данные и перевернуть массив.

Автор: bars80080 28.1.2011, 14:43
Цитата(enoff @  28.1.2011,  04:06 Найти цитируемый пост)
Без поля:
Сделать простой SELECT * FROM `table_name`
на php  получить все данные и перевернуть массив. 

насколько я видел, при удалении нескольких записей и вставке новых, некоторые новые записи выдаются в середине списка.

однозначно надо применять уникальное поле

Автор: enoff 28.1.2011, 20:28
да, сейчас проверил, новые записи вставляются на место удаленных.

Автор: skyboy 28.1.2011, 23:24
Цитата(bars80080 @  28.1.2011,  13:43 Найти цитируемый пост)
насколько я видел, при удалении нескольких записей и вставке новых

вот она - иллюстрация к утверждению "в отсутствие секции ORDER BY СУБД "имеет право" вернуть записи в произвольном порядке"

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)