Вставка сортировка против выбора сортировка. Сортировка данных в Excel по строкам и столбцам с помощью формул. Сортировка данных по собственному настраиваемому списку

В Access существует несколько способов сортировки данных, отобранных посредством запроса. Быстро выполнить сортировку в ок­не запроса позволяют команда Сортировка из меню Записи, а также кнопки По возрастанию и По убыванию панели инструментов. Для это­го следует включить в запрос поля таблицы, по которым будут рас­сортированы записи, и определить способ сортировки - по возраста­нию или по убыванию. Данные можно упорядочить по алфавиту, а так­же по убыванию или возрастанию. При алфавитно-цифровой сортировке по возрастанию данные сортируются в таком порядке: сначала - эле­менты, начинающиеся со знаков пунктуации или специальных симво­лов, затем - элементы, начинающиеся с цифр, а затем - элементы, которые начинаются с букв.

Сортировка данных в таблице по содержимому только одного столбца не всегда приводит к желаемым результатам, поэтому иногда требуется осуществлять сортировку по содержимому нескольких по­лей.

Примечание: Чтобы ускорить сортировку, следует размещать рядом поля, данные которых необходимо рассортировать.

Через окно запроса в исходную таблицу можно вставить новые записи, как при заполнении таблицы. Добавляемые или изменяемые данные помещаются в таблицу, на основе которой создан запрос. В результате ввода новых данных в таблицу может нарушиться порядок следования данных в запросе. Для восстановления порядка необходи­мо повторить вызов запроса и сортировку данных.

Выполнить сортировку данных можно и в окне конструктора зап­росов. Для этого необходимо нажать кнопку Открыть на вкладке Зап­росы окна базы данных. В окне выбора таблиц отметить имя таблицы, в которой следует выполнить сортировку данных, после чего нажать кнопки Добавить и Закрыть. Отметить в списке все имена полей, дважды щелкнув на заголовке списка, и переместить его в QBE-об­ласть. Для нужного поля задать в строке Сортировка способ сорти­ровки. Сохранить запрос.

Применение специальных критериев

До сих пор мы рассматривали запросы, выполняющие отбор полей таблицы. При создании запроса можно задать дополнительные крите­рии, вследствие чего он будет осуществлять отбор только нужных сведений в каждом поле.Для формирования такого запроса необходимо в QBE-области ввести значение в ячейку, расположенную на пересе­чении строки Условия отбора и колонки с нужным именем.

Критерии, устанавливаемые в QBE-области, необходимо заклю­чать в кавычки. Если Access идентифицирует введенные символы как критерий отбора, то заключает их в кавычки автоматически, а если нет, то сообщает о синтаксической ошибке. Программа Access не мо­жет распознать как критерий комбинацию символов и знаков подста­новки.

Примечание: В запросах символы подстановки * и? применяются так же, как и во всех приложениях Microsoft Office 97. Символ звездочки заменяет любое количество букв или цифр, а знак вопроса - только один символ.

Все строки в QBE-области, расположенные под строкой Условия отбора , служат для задания критериев отбора. Таким образом, для одного поля можно определить два, три и более критериев отбора данных. По умолчанию все элементы критерия объединяются операто­ром ИЛИ . Это значит, что запрос выберет те записи, которые соот­ветствуют хотя бы одному критерию.

Чтобы объединить несколько условий отбора оператором И , сле­дует привести их в одной строке. Например, если необходимо выб­рать записи из таблицы Зарплата , в которых указаны оклады от 310 до 1500, то в столбце Оклад надлежит ввести следующий критерий: Bet ­ ween 310 and 1500 . Другой формой записи этого критерия является выражение > 310 And <1500 .

В результате будут отобраны только те записи, которые удов­летворяют обоим условиям, т.е. оклады, значения которых находятся в интервале от 310 до 1500.

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

Исключить группу данных из состава анализируемых запросом записей (например, оклад 400) позволяет следующий критерий: Not 400 . Другая форма записи этого критерия: <>400 . В этом случае можно не использовать кавычки.

ОператорыAnd иOr применяются как отдельно, так и совместно. Следует помнить, что условия, связанные операторомAnd , выполняются раньше условий, объединенных операторомOr .

Я пытаюсь понять различия между Сортировка вставки и Сортировка выбора.

Оба они, похоже, имеют два компонента: несортированный список и отсортированный список. Они оба, кажется, берут один элемент из несортированного списка и помещают его в отсортированный список в нужном месте. Я видел некоторые сайты/книги, говорящие, что сортировка сортировки делает это путем замены по одному, а сортировка вставки просто находит нужное место и вставляет его. Тем не менее, я видел, что в других статьях говорится что-то, говоря, что сортировка вставки также своп. Следовательно, я смущен. Есть ли какой-нибудь канонический источник?

15 ответов

Выбор Сортировка:

Учитывая список, возьмите текущий элемент и обменивайте его с наименьшим элементом в правой части текущего элемента.

Вставка Сортировка:

Учитывая список, возьмите текущий элемент и вставьте его в соответствующую позицию списка, настроив список каждый раз, когда вы вставляете. Это похоже на размещение карт в карточной игре.

Время Сложность сортировки выбора всегда n(n - 1)/2 , тогда как сортировка вставки имеет более сложную временную сложность, так как ее наихудшая сложность n(n - 1)/2 . Как правило, это будет меньше или равно сравнению, тогда n(n - 1)/2 .

Оба сортировки сортировки и выбора сортировки имеют внешний цикл (по каждому индексу) и внутренний цикл (по подмножеству индексов). Каждый проход внутреннего контура расширяет отсортированную область на один элемент за счет несортированной области, пока не закончится несортированные элементы.

Разница заключается в том, что делает внутренний цикл:

    В сортировке сортировки внутренний цикл находится над несортированными элементами. Каждый проход выбирает один элемент и перемещает его в свое конечное местоположение (в текущем конце отсортированной области).

    При сортировке вставки каждый проход внутреннего цикла повторяется по отсортированным элементам. Сортированные элементы смещаются до тех пор, пока петля не найдет нужное место для вставки следующего несортированного элемента.

Итак, в сортировке сортируются отсортированные элементы в порядке вывода и остаются на месте после их поиска. И наоборот, при сортировке вставки несортированные элементы остаются включенными до тех пор, пока не будут использованы в порядке ввода, тогда как элементы отсортированной области будут перемещаться вокруг.

Что касается обмена: выбор сортировки делает одну свопинг за проход внутреннего цикла. Сортировка вставки обычно сохраняет элемент, который должен быть вставлен как temp , перед внутренним циклом, оставляя место для внутреннего цикла смещать отсортированные элементы на единицу, а затем копирует temp в точку ввода после.

Возможно, путаница заключается в том, что вы сравниваете описание сортировки связанного списка с описанием сортировки массива. Но я не могу быть уверен, так как вы не указали свои источники.

Самый простой способ понять алгоритмы сортировки - это часто, чтобы получить подробное описание алгоритма (не такие неопределенные вещи, как "этот сорт использует swap. Где-то я не говорю, где"), получить игровые карты (5-10 должно быть достаточно для простых алгоритмов сортировки) и запустить алгоритм вручную.

Сортировка сортировки: сканирование через несортированные данные, которые ищут наименьший оставшийся элемент, затем поменяйте его на позицию сразу после отсортированных данных. Повторяйте до конца. При сортировке списка вам не нужно менять минимальный элемент на позицию, вместо этого вы можете удалить список node из его старой позиции и вставить его в новый.

Вставка сортировки: возьмите элемент сразу после отсортированных данных, просмотрите отсортированные данные, чтобы найти место для его размещения, и поместите туда. Повторяйте до конца.

Вставка сортировки может использовать swap во время фазы "сканирования", но не обязательно, и это не самый эффективный способ, если вы не сортируете массив типа данных, который: (a) не может быть перемещен, только скопирован или местами; и (b) дороже копирования, чем для обмена. Если сортировка вставки использует swap, то, как она работает, является то, что вы одновременно выполняете поиск места и помещаете туда новый элемент, многократно меняя новый элемент с элементом непосредственно перед ним, до тех пор, пока элемент до него больше, чем Это. Когда вы достигнете элемента, который не больше, вы нашли правильное местоположение и перейдете к следующему новому элементу.

Логика для обоих алгоритмов весьма схожа. Оба они имеют частично отсортированную подматрицу в начале массива. Единственное различие заключается в том, как они ищут следующий элемент, который будет помещен в отсортированный массив.

    Сортировка вставки : добавляет следующий элемент в правильное положение;

    Сортировка сортировки : выбирает наименьший элемент и обменивает его с текущим элементом;

Кроме того, Сортировка вставки стабильна, в отличие от Выбор Сортировка .

Я реализовал оба в python, и стоит отметить, насколько они похожи:

Def insertion(data): data_size = len(data) current = 1 while current < data_size: for i in range(current): if data < data[i]: temp = data[i] data[i] = data data = temp current += 1 return data

С небольшим изменением можно выполнить алгоритм выбора Сортировка.

Def selection(data): data_size = len(data) current = 0 while current < data_size: for i in range(current, data_size): if data[i] < data: temp = data[i] data[i] = data data = temp current += 1 return data

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

Выбор Сортировка: по мере того как вы начинаете создавать отсортированный подсписчик, алгоритм гарантирует, что отсортированный подсписчик всегда полностью сортируется не только по его собственным элементам, но также и по полному массиву, то есть как отсортированному, так и несортированному подсписку. Таким образом, новый наименьший элемент, однажды найденный из несортированного подсписок, будет просто добавлен в конец отсортированного подсписок.

Вставка Сортировка: алгоритм снова разделяет массив на две части, но здесь элемент выбирается из второй части и вставлен в правильное положение в первую часть. Это никогда не гарантирует, что первая часть будет сортироваться в терминах полного массива, хотя, конечно, в последнем проходе каждый элемент находится в правильной сортированной позиции.

Я дам еще одну попытку: рассмотрим, что происходит в счастливом случае почти отсортированного массива.

При сортировке массив можно представить как имеющее две части: левая сторона - отсортированная, правая сторона - несортированная.

Вставка сортировки - выберите первый несортированный элемент и попытайтесь найти место для него среди уже отсортированной части. Поскольку вы выполняете поиск справа налево, вполне может случиться так, что первый отсортированный элемент, который вы сравниваете (самый большой, самый правый в левой части), меньше выбранного элемента, поэтому вы можете немедленно продолжить следующий несортированный элемент.

Сортировка сортировки - выберите первый несортированный элемент и попытайтесь найти наименьший элемент всей несортированной части и замените эти два, если желательно. Проблема состоит в том, что, поскольку правая часть является несортированной, вы должны каждый раз мыслить каждый элемент, так как вы не можете быть уверены, есть ли или нет даже меньший элемент, чем выбранный.

ВЫБОР СОРТИРОВКИ
Предположим, что существует массив чисел, написанных определенным/случайным образом, и мы можем сказать, что мы должны упорядочиваться в порядке возрастания. Также возьмите по одному числу за раз и замените их наименьшим номером. доступных в списке. сделав этот шаг, мы в конечном итоге получим желаемый результат.

ВСТАВКА СОРТИРОВКА
Помните о том же предположении, но единственное отличие состоит в том, что на этот раз мы выбираем по одному числу за раз и вставляем его в предварительно отредактированную часть, что уменьшает сравнение и, следовательно, более эффективно.

Короче говоря,

Сортировка сортировки: Выберите первый элемент из несортированного массива и сравните его с оставшимися несортированными элементами. Он похож на сортировку Bubble, но вместо того, чтобы заменять каждый меньший элемент, сохраняет индекс наименьшего элемента обновленным и заменяет его в конце каждого цикла.

Сортировка вставки: . Она противоположна сортировке выбора, где он выбирает первый элемент из несортированного подматрица и сравнивает его с отсортированным подматрицей и вставляет самый маленький найденный элемент и сдвигает все отсортированные элементы от его права до первого несортированного элемента.

Внутренний цикл сортировки вставки проходит через уже отсортированные элементы (в отличие от сортировки сортировки). Это позволяет ему прервать внутренний цикл, когда найдено правильное положение . Который означает, что:

  1. Внутренний цикл будет проходить только половину его элементов в среднем случае.
  2. Внутренний цикл будет прерван раньше, если массив почти отсортирован.
  3. Внутренний цикл будет отменен немедленно, если массив уже отсортирован, что делает сложность сортировки вставки линейной в этом случае.

Сортировка выбора должна всегда проходить через все внутренние элементы цикла. Вот почему сортировка вставки в основном предпочтительна для сортировки. Но, с другой стороны, сортировка выбора делает гораздо меньше элементарных свопов, что может быть более важным в некоторых случаях.

В этой статье я покажу Вам, как в Excel выполнить сортировку данных по нескольким столбцам, по заголовкам столбцов в алфавитном порядке и по значениям в любой строке. Вы также научитесь осуществлять сортировку данных нестандартными способами, когда сортировка в алфавитном порядке или по значению чисел не применима.

Думаю, всем известно, как выполнить сортировку по столбцу в алфавитном порядке или по возрастанию / убыванию. Это делается одним нажатием кнопки А-Я (A-Z) и Я-А (Z-A) в разделе Редактирование (Editing) на вкладке Главная (Home) либо в разделе Сортировка и фильтр (Sort & Filter) на вкладке Данные (Data):

Однако, сортировка в Excel имеет гораздо больше настраиваемых параметров и режимов работы, которые не так очевидны, но могут оказаться очень удобны:

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

Я покажу Вам, как в Excel сортировать данные по двум или более столбцам. Работа инструмента показана на примере Excel 2010 – именно эта версия установлена на моём компьютере. Если Вы работаете в другой версии приложения, никаких затруднений возникнуть не должно, поскольку сортировка в Excel 2007 и Excel 2013 работает практически так же. Разницу можно заметить только в расцветке диалоговых окон и форме кнопок. Итак, приступим…


Сортировать данные по нескольким столбцам в Excel оказалось совсем не сложно, правда? Однако, в диалоговом окне Сортировка (Sort) кроется значительно больше возможностей. Далее в этой статье я покажу, как сортировать по строке, а не по столбцу, и как упорядочить данные на листе в алфавитном порядке по заголовкам столбцов. Вы также научитесь выполнять сортировку данных нестандартными способами, когда сортировка в алфавитном порядке или по значению чисел не применима.

Сортировка данных в Excel по заголовкам строк и столбцов

Я полагаю, что в 90% случаев сортировка данных в Excel выполняется по значению в одном или нескольких столбцах. Однако, иногда встречаются не такие простые наборы данных, которые нужно упорядочить по строке (горизонтально), то есть изменить порядок столбцов слева направо, основываясь на заголовках столбцов или на значениях в определённой строке.

Вот список фотокамер, предоставленный региональным представителем или скачанный из интернета. Список содержит разнообразные данные о функциях, характеристиках и ценах и выглядит примерно так:

Нам нужно отсортировать этот список фотокамер по наиболее важным для нас параметрам. Для примера первым делом выполним сортировку по названию модели:


В результате сортировки у Вас должно получиться что-то вроде этого:

В рассмотренном нами примере сортировка по заголовкам столбцов не имеет серьёзной практической ценности и сделана только для того, чтобы продемонстрировать Вам, как это работает. Таким же образом мы можем сделать сортировку нашего списка фотокамер по строке, в которой указаны размеры, разрешение, тип сенсора или по любому другому параметру, который сочтём более важным. Сделаем ещё одну сортировку, на этот раз по цене.

Наша задача – повторить описанные выше шаги 1 – 3. Затем на шаге 4 вместо строки 1 выбираем строку 4 , в которой указаны розничные цены (Retail Price). В результате сортировки таблица будет выглядеть вот так:

Обратите внимание, что отсортированы оказались данные не только в выбранной строке. Целые столбцы меняются местами, но данные не перемешиваются. Другими словами, на снимке экрана выше представлен список фотокамер, расставленный в порядке от самых дешёвых до самых дорогих.

Надеюсь, теперь стало ясно, как работает сортировка по строке в Excel. Но что если наши данные должны быть упорядочены не по алфавиту и не по возрастанию / убыванию?

Сортировка в произвольном порядке (по настраиваемому списку)

Если нужно упорядочить данные в каком-то особом порядке (не по алфавиту), то можно воспользоваться встроенными в Excel настраиваемыми списками или создать свой собственный. При помощи встроенных настраиваемых списков Вы можете сортировать, к примеру, дни недели или месяцы в году. Microsoft Excel предлагает два типа таких готовых списков – с сокращёнными и с полными названиями.

Предположим, у нас есть список еженедельных дел по дому, и мы хотим упорядочить их по дню недели или по важности.


Готово! Теперь домашние дела упорядочены по дням недели:

Замечание: Если Вы планируете вносить изменения в эти данные, помните о том, что добавленные новые или изменённые существующие данные не будут отсортированы автоматически. Чтобы повторить сортировку, нажмите кнопку Повторить (Reapply) в разделе Сортировка и фильтр (Sort & Filter) на вкладке Данные (Data).

Как видите, сортировка данных в Excel по настраиваемому списку – задача вовсе не сложная. Ещё один приём, которому мы должны научиться – сортировка данных по собственному настраиваемому списку.

Сортировка данных по собственному настраиваемому списку

В нашей таблице есть столбец Priority – в нём указаны приоритеты задач. Чтобы упорядочить с его помощью еженедельные задачи от более важных к менее важным, выполним следующие действия.

Повторите шаги 1 и 2 из предыдущего примера. Когда откроется диалоговое окно Списки (Custom Lists), в одноимённом столбце слева нажмите НОВЫЙ СПИСОК (NEW LIST) и заполните нужными значениями поле Элементы списка (List entries). Внимательно введите элементы Вашего списка именно в том порядке, в котором они должны быть расположены в результате сортировки.

Нажмите Добавить (Add), и созданный Вами список будет добавлен к уже существующим. Далее нажмите ОК .

Вот так выглядит наш список домашних дел, упорядоченных по важности:

При выборке данных бывает важно получить их в определенном упорядоченном виде. Сортировка может быть выполнена по любым полям с любым типом данных. Это может быть сортировка по возрастанию или убыванию для числовых полей. Для символьных (текстовых) полей это может быть сортировка в алфавитном порядке, хотя по сути, она так же является сортировкой по возрастанию или убыванию. Она так же может быть выполнена в любых направлениях – от А, до Я, и наоборот от Я, до А.

Суть процесса сортировки заключается к приведению последовательности к определенному порядку. Подробней о сортировки можно узнать в статье "Алгоритмы сортировки" Например, сортировка произвольной числовой последовательности по возрастанию:

2, 4, 1, 5, 9

должна привести к упорядоченной последовательности:

1, 2, 4, 5, 6

Аналогично, при сортировке по возрастанию строковых значений:

Иванов Иван, Петров Петр, Иванов Андрей

результат должен быть:

Иванов Андрей, Иванов Иван, Петров Петр

Здесь строка "Иванов Андрей" перешла в начало, так как сравнение строк производится посимвольно. Обе строки начинаются одинаковых символов "Иванов ". Так как символ "А" в слове "Андрей" идет раньше в алфавите, чем символ "И" в слове "Иван", то эта строка будет поставлена раньше.

Сортировка в запросе SQL

Для выполнения сортировки в строку запроса нужно добавить команду ORDER BY. После этой команды указывается поле, по которому производится сортировка.

Для примеров используем таблицу товаров goods:

num
(номер товара)
title
(название)
price
(цена)
1 Мандарин 50
2 Арбуз 120
3 Ананас 80
4 Банан 40

Данные здесь уже упорядочены по столбцу "num". Теперь, построим запрос, который выведет таблицу с товарами, упорядоченными в алфавитном порядке:

SELECT * FROM goods ORDER BY title

SELECT * FROM goods – указывает выбрать все поля из таблицы goods;

ORDER BY – команда сортировки;

title – столбец, по которому будет выполняться сортировка.

Результат выполнения такого запроса следующий:

num title price
3 Ананас 80
2 Арбуз 120
4 Банан 40
1 Мандарин 50

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

Направление сортировки

По умолчанию, команда ORDER BY выполняет сортировку по возрастанию. Чтобы управлять направлением сортировки вручную, после имени столбца указывается ключевое слово ASC (по возрастанию) или DESC (по убыванию). Таким образом, чтобы вывести нашу таблицу в порядке убывания цен, нужно задать запрос так:

SELECT * FROM goods ORDER BY price DESC

Сортировка по возрастанию цены будет:

SELECT * FROM goods ORDER BY price ASC

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

SQL допускает сортировку сразу по нескольким полям. Для этого после команды ORDER BY необходимые поля указываются через запятую. Порядок в результате запроса будет настраиваться в той же очередности, в которой указаны поля сортировки.

column1 column2 column3
3 1 c
1 3 c
2 2 b
2 1 b
1 2 a
1 3 a
3 4 a

Отсортируем таблицу по следующим правилам:

SELECT * FROM mytable ORDER BY column1 ASC, column2 DESC, column3 ASC

Т.е. первый столбец по возрастанию, второй по убыванию, третий опять по возрастанию. Запрос упорядочит строки по первому столбцу, затем, не разрушая первого правила, по второму столбцу. Затем, так же, не нарушая имеющихся правил, по третьему. В результате получится такой набор данных:

column1 column2 column3
1 3 a
1 3 c
1 2 a
2 2 b
2 1 b
3 1 a
3 1 c

Порядок команды ORDER BY в запросе

Сортировка строк чаще всего проводится вместе с условием на выборку данных. Команда ORDER BY ставится после условия выборки WHERE. Например, выбираем товары с ценой меньше 100 рублей, упорядочив по названию в алфавитном порядке:

SELECT * FROM goods WHERE price 100 ORDER BY price ASC

Откройте в проводнике папку «Документы» и отсортируйте содержимое по дате изменения. Что у вас сверху – папки или файлы? Правильный ответ зависит от того, как вы открыли папку:)

Постоянные читатели уже догадались, что сегодня не обойдется без – интересной, но так толком и не прижившейся . Казалось бы, в Windows 10 библиотеки ушли на второй план, но на них очень много завязано.

Сегодня в программе

О роли библиотек в Windows 10

Действительно, в проводнике папки Документы, Изображения и Музыка оккупировали Компьютер и панель быстрого запуска, а библиотеки скрылись из области навигации. Но на них полагается история файлов (как мы выяснили в предыдущей записи) и унаследованное из Windows 7 резервное копирование образов (со старыми граблями).

А главное – библиотеки присутствуют в стандартных диалогах , причем окно открывается именно в библиотеке , в том числе в магазинных приложениях.

В качестве источника фотографий предлагается добавить папку из библиотеки Документы в библиотеку Изображения

При этом Microsoft так и не удалось вживить библиотеки в оболочку, и сегодня я разберу очередную путаницу.

Нестыковка сортировки

В зависимости от того, открываете вы папку из библиотеки или минуя ее, может варьироваться не только внешний вид , но и сортировка по дате. Проведите простой эксперимент (результат ниже верен при стандартных настройках проводника):

  1. Откройте папку с документами из области навигации или Win + R → Documents и отсортируйте ее по дате изменения. Недавние файлы окажутся вверху списка.
  2. Откройте эту же папку из библиотеки: Win + R → shell:documentsLibrary и выполните такую же сортировку. Здесь вверху списка папки, и надо прокрутить их вниз, чтобы добраться до файлов.

По адресной строке легко определить, открыта папка из библиотеки или напрямую (это я разбирал в викторине еще 5 лет назад).

Разница в сортировке по дате изменения между папками и библиотеками при стандартных настройках проводника

Имеет смысл привести настройки к единому виду, чтобы не путаться. Это полезно даже в случае, если вы не пользуетесь библиотеками намеренно, поскольку вы будете на них натыкаться в диалоговых окнах классических и магазинных приложений.

Вопрос лишь в том, какой способ отображения результатов вам милее!

Уверен, что опытные пользователи часто используют первый вариант – с файлами вверху. Сортируя по дате, мы все-таки чаще ищем файл в известной папке, и нет смысла крутить колесо мыши лишний раз. Но вариант с папками сверху имеет право на жизнь, поэтому я к нему вернусь, когда разберусь с библиотеками.

Сортировка в библиотеках

Можно долго ломать голову, если не знать про одну особенность библиотек. Когда вы открываете папку из библиотеки, наряду с группировкой и сортировкой появляется возможность упорядочивания файлов, о которой я рассказывал в классической серии пенальти «Проводник vs. TC».

Интересно, что в Windows 7 упорядочивание было вынесено на специальную библиотечную панель вверху окна проводника. Но Windows 8 он сильно обновился , и упорядочивание осталось только в контекстном меню.

Библиотеки: сортировка по дате – «файлы всегда вверху»

Щелкните ПКМ на свободном месте в папке. А вот и причина того, что в библиотеках папки всегда находятся сверху – по ним ведется упорядочивание!

Контекстное меню фона папки, открытой из библиотеки

Переключите упорядочивание на Имя и отсортируйте папку по дате изменения. Теперь недавние файлы сверху, что и требовалось доказать!

Сортировка в папках

Сейчас будет интереснее! Допустим, вы скачали в папку Movies седьмой сезон любимого сериала, все эпизоды которого легли во вложенную папку. В корне Movies у вас много отдельных файлов — фильмы, торрент-файлы и т.д. Обычная сортировка по дате тут не помогает, потому что папки оседают внизу — под файлами.

Обычная сортировка папки по дате в папке

Сортировка по имени поднимет папки вверх, но свежая папка затеряется в их списке, и все равно придется искать ее глазами.

Папки: сортировка по дате – «папки всегда вверху»

Секретное решение заложено в проводник со времен Windows Vista.

  1. Щелкните столбец Дата изменения , чтобы новое было сверху.
  2. Удерживая Shift , щелкните столбец Тип (также сработает Имя ).

Сверху отобразятся папки, отсортированные по дате, и свежая папка будет в самом верху!

Индикатор сортировки в проводнике всегда указывает на основной столбец, а дополнительные критерии никак не обозначены

Проводник запоминает комбинированное состояние сортировки, но его можно сбросить – сначала удерживая Ctrl , щелкните по тому же столбцу, а потом отсортируйте по дате изменения как обычно.

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

Сортировка по дате – это самая распространенная постановка вопроса, но трюк с Shift работает с любыми столбцами, причем вы можете применить одновременно несколько критериев сортировки!

Чтобы продемонстрировать это, я сгенерировал полтора десятка файлов двух типов с разными размерами и датами создания, а для наглядности сделал GIF с четырьмя состояниями сортировки.

По порядку фреймов:

  1. В исходном состоянии папки отсортированы по имени.
  2. Сортируем по типу обычным способом.
  3. Сортируем с Shift по размеру, и файлы каждого типа выстраиваются по убыванию размера.
  4. Сортируем с Shift по дате изменения, и файлы одного размера выстраиваются от новых к старым!

Работает! :)

Бонус: сортировка в Total Commander

Дочитав статью до этого места, некоторые из вас, думаю, уже проверили, работает ли прием с Shift в любимом файловом менеджере. Total Commander так тоже умеет! Причем у него реализация более наглядная.

У Total Commander в столбцах появляются стрелки и порядковый номер сортировки, а основной столбец выделен цветом

Думаю, это должно работать и в других двухпанельных менеджерах – напишите в комментариях!

Грабли

Есть пара моментов, которые нужно учитывать.

  1. В проводнике у трюка с Shift есть ограничение – он не работает при активной панели просмотра, но она быстро переключается по Alt + P .
  2. Применительно к сортировке по дате вместо этого фокуса в сети встречаются советы использовать столбец Дата вместо Дата изменения . Это чревато тем, созданный год назад и скачанный сегодня документ не окажется вверху списка.

История вопроса

Обычно, этот подзаголовок я использую для рассказа об эволюции той или иной фичи, но сегодня я вас развлеку историей о нелегком пути этой статьи на свет.

Вопрос про библиотеки мне задал в почте читатель Евгений К . Порывшись в блоге, я выяснил, что конкретного решения не публиковал, а на новую отдельную статью оно не тянуло. Я скинул ответ почтой и сделал себе пометку написать о нем в соцсетях . Но мысль о том, что я уже писал на эту тему крепко засела в голове.

Я прошерстил OneNote и нашел упоминание о сортировке с Shift ! Оно оказалось в набросках к опубликованной четыре (!) года назад статье 14 способов использования мыши в связке с клавиатурой для ускорения работы . Очевидно, я тогда решил, что трюк заслуживает отдельного материала в продолжение темы (и даже сделал пометку ToDo:)

Наброски к записи 2012 года в архиве OneNote

Теперь я доставил вам и пятнадцатый способ:) Лучше поздно, чем никогда!

Дискуссия

Мы уже столько раз обсуждали файловые менеджеры и проводник в частности, что трудно придумать новую тему для дискуссии. В комментариях:

  • напишите знали ли вы об этом трюке сортировки и насколько он вам [будет] полезен в повседневных задачах
  • поделитесь приемами, которые вы применяете, когда нужно максимально быстро добраться до нужных файлов или папок, в т.ч. в окнах Открыть/Сохранить как