К основному контенту

Способы сортировки базы данных

Для выполнения операций над сортировкой в базе данных, необходимо дополнительное поле,

к примеру ID, ORDER – два первичных ключевых поля для системных целей.

теперь можно выполнять примерно такие запросы:

update nc_directory
set order = 1
where id = 2;
update nc_directory
set order = 2
where id = 1;

или

выбрать две записи select id, sort from tbl limit 2 order by id

update tbl set sort=key2 where id=id1;
update tbl set sort=key1 where id=id2;

где

id integer unsigned NOT NULL auto_increment

это два запроса меняют местами две записи.

то есть изменяется только поле ORDER не трогая ID.

и при выводе записей результат сортировать по полю ORDER.

можно еще использовать не использующийся ID=-1

update table set id=-1 where id=233
update table set id=233 where id=234
update table set id=234 where id=-1
 

 

update peoples
set значение=
(select distinct o1.значение from peoples o1
where peoples.фамилия=o1.фамилия and peoples.значение<>o1.значение)


where фамилия in
(select distinct o2.фамилия from peoples o2
group by o2.фамилия having count(o2.фамилия)=2)

Чтобы перенумеровать поле id, нужно 2 sql-запроса:
set @n=0;
update `table` set `id`=(select @n:=@n+1) order by `id`;

При запуске из PHP:
mysql_query("set @n=0");
mysql_query("update `table` set `id`=(select @n:=@n+1) order by `id`");

здесь справка по механизмам оптимизации mysql

Комментарии

Популярные сообщения из этого блога

Русская кодировка ASCII, ANSI и UTF-8, windows-1251 (CR, LF, CR LF)

Что нужно знать: Encoding – это кодировка для вывода данных (UTF-8, windows-1251) Line Endings – формат строк (CR, LF, CR LF) Byte Order Marker (BOM) – системная область в начале файла. LF – используется в UNIX вместе с кодировками UTF-8 или windows-1251 CR – используется в MAC системах. на сервере лучше использовать кодировку ANSI это и есть кириллица (Windows), символ занимает 1 байт (оптимизированный ASCII) UTF-8 может содержать заголовок BOM который содержит системную информацию, символ занимает 2 байта wysiwyg редакторы добавляют метатег в html страницы с кодировкой кирилицы. это не очень хорошо, если сервер настроен на UTF-8, в этой кодировке корректно работают некоторые библиотеки приложения и прочие

Как узнать время включения/выключения компьютера.

Способов масса, одни из них: в журнале событий windows  выбрать eventlog, теперь в таблице легко найти события с кодами: 6005 - событие остановки eventlog - компьютер выключился 6006 - событие запуска eventlog - компьютер включился обычно эта служба запускается и остонавли во время включения/выключения компьютера, и пишет в журнале событий системы код события и время.

Извлечение, редактирование и публикация файлов в SharePoint

Теги: Sharepoint в sharepoint designer на ленте за извлечение / редактирование или отмену извлечений отвечают кнопки  в браузере это выглядит по другому   файл извлечен и пока редактируется пользователем   страница с индивидуальным дизайном возврат страницы с индивидуальным дизайном к определению узла (к первоначальному виду не изменяя веб-части) Возврат извлеченной страницы с отменой всех внесенных изменений Изначально извлечение было создано для исключения конфликтов при редактировании файлов. Например если один пользователь открыл документ и редактирует, то второй не сможет открыть пока первый не вернет документ на место. Простыми словами извлечение значит, что пользователь забирает документ для редактирования. И возвращает после окончания редактирования. Само редактирование может выполняться и без подключения к сети, документ хранится в черновиках моих документов. В официальной документации сказано: Извлечение файлов позволяет избежать ситуации, когда несколь