Как вывести максимальное значение в sql
5 лет назад
Человек-Молекула
Ответы
MAX() - это одна из агрегатных функций, доступных в SQL, которая помогает получить наибольшее значение среди нескольких значений, указанных в столбце.
Например, команда ниже вернёт из таблицы univerities название университета с максимальным количеством студентов и само количество студентов
4 года назад
Aleksandr Litvinov
Используйте функцию MAX(). Вот небольшой пример:
4 года назад
Roman Ashikov
Максимальное значение столбца возвращает агрегатная функция MAX():
MAX() пропускает NULL. Работает с числами, датами и строками: для дат вернёт самую позднюю, для строк — последнюю по алфавиту.
Вся строка с максимальным значением
SELECT name, MAX(price) FROM products выдаст ошибку или случайное name: агрегатная функция не знает, из какой строки брать остальные столбцы. Самый дорогой товар целиком:
Если товаров с максимальной ценой несколько, LIMIT 1 вернёт один из них. Все такие товары — через подзапрос:
Максимум по группам
Самая высокая цена в каждой категории:
Самый дорогой товар в каждой категории целиком — оконной функцией:
RANK() оставит все товары, если у нескольких одинаковая максимальная цена. Только один на категорию — ROW_NUMBER().
Максимум из нескольких столбцов в строке
MAX() работает по строкам таблицы. Наибольшее из значений в одной строке возвращает GREATEST():
GREATEST() есть в PostgreSQL, MySQL и Oracle. В SQL Server она появилась в версии 2022.
Минимум
Наименьшее значение — MIN(), работает так же.
Агрегатные функции и группировку разбирают в бесплатном курсе «Основы SQL».
7 дней назад
Никита Вихров






