TGViewer
SQL Portal | Базы Данных SQL Portal | Базы Данных @sqlportal · 13.7K subscribers
Post #1932 1.2K
SQL-совет: ORDER BY по нескольким столбцам

При использовании ORDER BY с несколькими столбцами база данных сначала сортирует весь результат по первому указанному столбцу (в данном примере — sales).

В результате образуются группы строк с одинаковыми значениями. Например, Mira и Bob оказываются в одной группе, потому что у обоих значение sales равно 12 000.

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

Поскольку второй столбец — age, а сортировка выполняется по возрастанию (ASC), сначала будет выведена Mira (30 лет), а затем Bob.

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

Что если совпадают значения и во втором столбце? Если одинаковыми оказываются значения и второго столбца, всё зависит от конкретной СУБД. Некоторые базы данных, особенно при работе с небольшими наборами данных, могут сохранить порядок вставки записей как дополнительный критерий сортировки.

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

Совет: если вам важен полностью предсказуемый порядок результатов, всегда добавляйте в ORDER BY дополнительный столбец с уникальными значениями (например, id). Это обеспечит стабильную и воспроизводимую сортировку.

👉 @SQLPortal
  • ❤ 4
  • 👍 2
More from @sqlportal
  1. Oct 8, 20265 групп реляционных СУБД, которые полезно знать • С открытым исходным кодом: PostgreSQL, M…
  2. Oct 7, 2026Разбираем SQL-запросы с помощью Python Какие таблицы и колонки использует запрос? Библиоте…
  3. Oct 7, 2026Линтер и автоформаттер для SQL Бесплатный инструмент с открытым исходным кодом, который пр…
  4. Oct 6, 2026Знатоки SQL и те, кто только учится, вопрос к вам Какой из этих запросов вы выберете для в…
  5. Oct 6, 2026CSRF ≠ XSS ≠ SQL-инъекция. Все три уязвимости безопасности, но механизмы атак у них разные…
  6. Oct 5, 2026Знатоки SQL: в каких случаях стоит использовать код A, а в каких — код B? 👉 @SQLPortal
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →