20 октября 2026

Использование COLLATION для управления сортировкой текстовых данных

Пять лет тому назад я уже писал о сортировке результата SQL-запроса по строковому полю содержащему комбинацию букв и цифр в "естественном" порядке. Естественный порядок сортировки – это способ упорядочивания строк, при котором вложенные числа рассматриваются как целые числовые значения, а не как последовательность символов. Тогда мной рассматривалось создание функций, которые реализуют такую сортировку под MS SQL Server, Oracle и PostgreSQL. В новом проекте на PostgreSQL мы снова столкнулись с необходимостью сортировки строк в естественном порядке. Когда я предложил разработчикам свою функцию, коллега мне подсказал другое решение – для полей нуждающихся в естественном порядке сортировки создать свой специальный COLLATION.

Слон-бюрократ PostgreSQL: Отклонено! Кто такой kn-true? Принеси мне заполненный бланк CREATE COLLATION!