Сортировка результатов запроса

Введение в базы данных на Python

Jason Myers

Co-Author of Essential SQLAlchemy and Software Engineer

Конструкция ORDER BY

  • Позволяет управлять порядком записей в результатах запроса
  • Доступен как метод для выражений: order_by()
Введение в базы данных на Python

Сортировка по возрастанию

print(results[:10])
[('Illinois',), ...]
stmt = select([census.columns.state])

stmt = stmt.order_by(census.columns.state)
results = connection.execute(stmt).fetchall()
print(results[:10])
[('Alabama',), ...]
Введение в базы данных на Python

Сортировка по убыванию

  • Оберните столбец в desc() внутри order_by()
Введение в базы данных на Python

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

  • Просто перечислите несколько столбцов через запятую
  • Сначала сортировка выполняется полностью по первому столбцу
  • При совпадении значений — по второму
  • Процесс повторяется для всех указанных столбцов
Введение в базы данных на Python

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

print(results)
('Alabama', 'M')
stmt = select([census.columns.state, census.columns.sex])

stmt = stmt.order_by(census.columns.state, census.columns.sex)
results = connection.execute(stmt).first() print(results)
('Alabama', 'F')
('Alabama', 'F')
...
('Alabama', 'M')
Введение в базы данных на Python

Давайте потренируемся!

Введение в базы данных на Python

Preparing Video For Download...