поменять строки местами в таблице

MySQL/PostgreSQL/SQLite/Oracle/M$SQL/....

Модератор: terminus

Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
chuchundra
рядовой
Сообщения: 35
Зарегистрирован: 2007-09-18 8:35:03

поменять строки местами в таблице

Непрочитанное сообщение chuchundra » 2007-09-22 22:51:50

пожалуста хелп!
примерно хочу делать вот так

select * from table;

=======================
| 1 | aaaaaa | 111111111 |
=======================
| 3 | ccccccc | 333333333 |
=======================
| 2 | bbbbbb | 222222222 |
=======================

а хочу сортировать или как там

=======================
| 1 | aaaaaa | 111111111 |
=======================
| 2 | bbbbbb | 222222222 |
=======================
| 3 | ccccccc | 333333333 |
=======================

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Аватара пользователя
dikens3
подполковник
Сообщения: 4856
Зарегистрирован: 2006-09-06 16:24:08
Откуда: Нижний Новгород
Контактная информация:

Re: поменять строки местами в таблице

Непрочитанное сообщение dikens3 » 2007-09-23 9:10:49

Код: Выделить всё

select * from table order by первое поле ASC
select * from table order by первое поле DESC
Лучше установить FreeBSD, чем потратить 30 лет на Linux'ы и выяснить какой из них хуже.

chuchundra
рядовой
Сообщения: 35
Зарегистрирован: 2007-09-18 8:35:03

Re: поменять строки местами в таблице

Непрочитанное сообщение chuchundra » 2007-09-23 13:24:21

Код: Выделить всё

select * from users order by id ASC;
=======================
| 1 | aaaaaa | 111111111 |
=======================
| 2 | bbbbbb | 222222222 |
=======================
| 3 | ccccccc | 333333333 |
=======================

а можно сделать так чтобы в таблице тоже изменились строки?

тоесть каждый раз когда

Код: Выделить всё

select * from users;
показал
=======================
| 1 | aaaaaa | 111111111 |
=======================
| 2 | bbbbbb | 222222222 |
=======================
| 3 | ccccccc | 333333333 |
=======================

Аватара пользователя
dikens3
подполковник
Сообщения: 4856
Зарегистрирован: 2006-09-06 16:24:08
Откуда: Нижний Новгород
Контактная информация:

Re: поменять строки местами в таблице

Непрочитанное сообщение dikens3 » 2007-09-23 21:51:28

Если ничего не работает, прочтите хоть одну книгу по базам данных.
Нет, сделать этого нельзя. Данные хранятся в базе хаотично(не отсортированными).
Лучше установить FreeBSD, чем потратить 30 лет на Linux'ы и выяснить какой из них хуже.

Аватара пользователя
lexy
сержант
Сообщения: 288
Зарегистрирован: 2006-07-21 9:54:44
Откуда: Волхов, ЛО
Контактная информация:

Re: поменять строки местами в таблице

Непрочитанное сообщение lexy » 2007-09-26 11:11:40

dikens3 писал(а):Если ничего не работает, прочтите хоть одну книгу по базам данных.
Нет, сделать этого нельзя. Данные хранятся в базе хаотично(не отсортированными).
Насчет нельзя не соглашусь.... можно

Код: Выделить всё

INSERT INTO `временная таблица с такой же структурой` SELECT * FROM `основная таблица` ORDER BY `поле для сортировки`
TRUNСATE `основная таблица`
INSERT INTO `основная таблица` SELECT * FROM `временная таблица с такой же структурой`
TRUNСATE `временная таблица`
и запихнуть скрипт, который это делает в cron на время, когда мускуль менее загружен :D