Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Компьютеры + Интернет » Вебмастеру » Изменение порядка строк MySQL

Ответить
Настройки темы
Изменение порядка строк MySQL

Старожил


Сообщения: 273
Благодарности: 2

Профиль | Отправить PM | Цитировать


Может кто-нибудь посказать алгоритм (или функцию) для перемещения строки в таблице MySQL на несколько позиций вверх/вниз. Чтобы она именно хранилась с таким id, а не только выводилась.

-------
The Power To Serve...


Отправлено: 12:43, 18-07-2003

 

Аватара для Megabyte

Пользователь


Сообщения: 114
Благодарности: 2

Профиль | Отправить PM | Цитировать


Хмммм.... А смысл? По большому счёту клиенту без разницы, в каком именно порядке строки хранятся, ему важно в каком порядке сервер их выдаёт (вообще-то разница есть, но она влияет только на быстродействие сервера). Сделай ID в строках в нужном порядке и используй ORDER BY (select id, field1, field2,... from my_table order by id) - сервер будет выдавать тебе строки в нужном тебе порядке.

-------
Слова следует взвешивать, а не считать.
(Восточная пословица)


Отправлено: 10:36, 21-07-2003 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Старожил


Сообщения: 273
Благодарности: 2

Профиль | Отправить PM | Цитировать


а вот как *
Цитата:
Сделай ID в строках в нужном порядке
? я, собственно про это и спросил....

Пример: Нужно чтобы строка с данными test1 * * test2 выводилась второй. всегда.

id * *field_1 * field_2

1     data1    data2
2 * * data1 * *data2
3 * * data1 * *data2
4 * * test1 * * test2
5 * * data1 * *data2

Если у одной строки меняешь ID (допустим 4 на 2) - то он совпадет с уже существующим (последствия я не знаю).

-------
The Power To Serve...


Отправлено: 11:08, 21-07-2003 | #3


Аватара для Megabyte

Пользователь


Сообщения: 114
Благодарности: 2

Профиль | Отправить PM | Цитировать


Ну, в зависимости от ограничений, навешанных на таблицу, сервак может позволить существовать двум строкам с одинаковым ID, а может и не позволить (органичение уникальности по ID). Если не даёт - меняешь у строки с ID=2 поле ID на любое неиспользуемое (например 0), потом у строки 4 делаешь ID=2, потом ID=0 меняешь на ID=4. Стандартная задача перестановки двух переменных. Вот SQL-код:
Код: Выделить весь код
update my_table set ID=0 where ID=2;
update my_table set ID=2 where ID=4;
update my_table set ID=4 where ID=0;

-------
Слова следует взвешивать, а не считать.
(Восточная пословица)


Отправлено: 14:25, 21-07-2003 | #4


Старожил


Сообщения: 273
Благодарности: 2

Профиль | Отправить PM | Цитировать


Спасибо.

Именно это мне и нужно было. И еще, похоже, надо будет автоинкремент убрать с поля ID.

видимо надо купить книгу по азам программирования. функции сортировки и все такое. Может, кстати, подскажешь чего-нибудь стоящее?

-------
The Power To Serve...


Отправлено: 14:56, 21-07-2003 | #5


Аватара для Megabyte

Пользователь


Сообщения: 114
Благодарности: 2

Профиль | Отправить PM | Цитировать


Цитата:
И еще, похоже, надо будет автоинкремент убрать с поля ID.
Я провёл опыт - автоинкремент ему не мешает, он только требует уникальности и всё, тот SQL-код для изменения ID-шников прекрасно работает и при автоинкремент не сбивается. Так что можешь его оставить.
А по поводу книг... Сам я учил программирование ещё на Партнёре-0101 и Spectrum-е, сейчас книги по программированию для начинающих не читаю и ничего посоветовать не могу. Но если у тебя есть доступ в Инет, поищи на Яндексе или Гугле что-нибудь типа "программирование для начинающих" или что-нибудь подобное

-------
Слова следует взвешивать, а не считать.
(Восточная пословица)


Отправлено: 11:05, 22-07-2003 | #6



Компьютерный форум OSzone.net » Компьютеры + Интернет » Вебмастеру » Изменение порядка строк MySQL

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Разное - [решено] проблема со сменой диска ( изменение порядка загрузки) Alex_1953 Microsoft Windows 2000/XP 7 28-04-2008 15:10
глюки при удалении строк из MySQL Vlad Drakula Вебмастеру 3 11-11-2003 02:12




 
Переход