Mysql вывод даных
Есть бд mysql. Из админки сайта добавляется новый товар в таблицу. Товару присваивается автоматически id. При выводе товара на сайт, он становится первый на странице, хотя id у него скажем 126. Когда добавляю ещё один товар(127), то 127 становится первым. Как отсортировать отображение товаров на странице? Ведь нереально менять вручную id когда скажем 300 товаров, и надо все их менять местами.
|
Цитата:
Можно было и не задаваться таким вопросом ибо база и существует для того чтобы иметь гибкий и выбор ее данных, и различную их сортировку, все это у нее имеется, конечно же. |
Прочитал инструкцию, но поскольку не силен в программировании то полял только каждое 10 слово. Если я правильно понял, то поскольку вывод товаров производится хаотично, единственным правильным решением будет обращение к таблице с перечислением всех id в том порядке в котором мне нужно?
|
Цитата:
Что там непонятного? Там описан синтаксис запроса выборки из таблицы базы данных. Я же вам не стану все из него объяснять, это слишком много времени требует, так что искать ответы будете сами. Но там о сортировке черным по белому написано и даны примеры. Пусть нужно выбрать все поля (столбцы) таблицы с именем products отсортировав их в порядке от большего ID продукта к меньшему. Сортировка задается в конце условия выборки (если оно есть), до лимита, если оно определено, ну и при прочих условиях, кои там тоже описаны. Если поле идентификатора называется id, то запрос будет таким: "SELECT * FROM `products` ORDER BY `id` DESC" Если же порядок сортировки нужен не убывающий (DESC), то просто убрать иго из запроса - порядок сортировки "возрастающий" (ASC) является значением по умолчанию и его можно не указывать. Написано же там об этом? Написано. Можно только заметить, что если при добавлении продукта в базу пишется и его дата добавления, то сортировку можно выбрать и по полю даты, ибо она всегда будет больше у вновь добавляемых продуктов. |
Часовой пояс GMT +3, время: 06:25. |