dllweb
@dllweb

Как изменить порядок записей в базе данных?

Привет всем, допустим есть массив

$data = array(
array('id'=>1, 'parent'=>0, 'name'=>'heh1', 'sort'=>0001),
array('id'=>2, 'parent'=>1, 'name'=>'heh2', 'sort'=>0002),
array('id'=>3, 'parent'=>1, 'name'=>'heh3', 'sort'=>0003),
array('id'=>4, 'parent'=>0, 'name'=>'heh4', 'sort'=>0004),
array('id'=>5, 'parent'=>0, 'name'=>'heh5', 'sort'=>0005),
array('id'=>6, 'parent'=>0, 'name'=>'heh6', 'sort'=>0006),
array('id'=>7, 'parent'=>0, 'name'=>'heh7', 'sort'=>0007),
array('id'=>8, 'parent'=>7, 'name'=>'heh8', 'sort'=>0008),
array('id'=>9, 'parent'=>1, 'name'=>'heh9', 'sort'=>0009),
			);


Как видите у него есть поле sort где хранятся значения 0001 допустим.
И по этому полю идёт сортировка, где-то там на фронтэнде вывод записей

Я к примеру хочу изменить порядок чтобы heh2 стал на место heh3
Но общий порядок чтобы остался неизменным. То есть heh1 остался так же на первой позиции, а
heh4 после heh2

Как произвести перезапись в таблице?
  • Вопрос задан
  • 2948 просмотров
Пригласить эксперта
Ответы на вопрос 3
He11ion
@He11ion
PHP-monkey
Крайне тупой ответ на этот вопрос - поменяйте у них значения 'sort', в чем сложность-то?
Ответ написан
@Inav
индекс сортировки лучше задавать не последовательно, а с шагом, например, 10, 20, 30, 40 ..., тогда чтобы вставить запись между первой и второй достаточно задать sort => 15
Ответ написан
dllweb
@dllweb Автор вопроса
Читайте пожалуйста комментарии к каждому ответу, там не так всё просто.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
YCLIENTS Москва
от 200 000 до 350 000 ₽
Ведисофт Екатеринбург
от 25 000 ₽
ИТЦ Аусферр Магнитогорск
от 100 000 до 160 000 ₽
24 апр. 2024, в 10:32
400000 руб./за проект
24 апр. 2024, в 10:12
10000 руб./за проект