Общие > Базы данных

Сортировка в MySQL чтоб как я хочу

(1/3) > >>

Goodwin:
Прайс лежит в базе MySQL.
Есть тем, конечно, индекс, но результат все равно выдается как бог на душу положит.
Скажем, есть в прайсе позиции Стул белый, Стул серый, Стол.
Так он их выдает в таком порядке: Стул белый, Стол, Стул серый.
Как сделать так, чтобы расположение позиций можно было менять (или добавить позицию в центр прайса, а не в конец)?
Сейчас я вижу только один вариант - вручную переписывать индекс, но при большом объеме это не выход.

NeoNox:
Поиск по этому форуму.
Много раз обсуждалось.

ThE0ReTiC:
Введи поде в таблице, характеризующее позицию товара в прайс листе.

Гость:
Да я уж обыскался. Какие слова не в вожу - никак то, что надо не находится.

>>Введи поде в таблице, характеризующее позицию товара в прайс листе.

Я тоже думал об этом. Но если в таблице сто товаров и я хочу на пятое место что-то добавить, то ко всем остальным придется вручную добавлять единичку? Можно, конечно, это реализовать программно, но по-моему это можно как-то проще сделать. Должна же быть какая-то функция "вставить между строк". :-)

fidget:
> Должна же быть какая-то функция "вставить между строк". :-)
нет, не должна, потому что СУБД хранит данные в неупорядоченном виде и ей все равно какая у тебя по счету эта строка 5я или 7я.

> о ко всем остальным придется вручную добавлять единичку?
сложно сделать:

update table set position=position+1 where position>\'some number\' order by position desc

?

Навигация

[0] Главная страница сообщений

[#] Следующая страница

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 
Перейти к полной версии