2.20: В какой строке хранится максимум некоего столбца MySQL
Главная Страница » Книги по PHP » MySQL уроки для начинающих с нуля » В какой строке хранится максимум некоего столбца MySQL
Допустим, надо найти код, торговца и цену наиболее дорогого изделия.
В MySQL это делается за два шага:
- Получите максимальное ценовое значение из таблицы с помощью SELECT.
- Используя это значение, надо создать фактический запрос:
SELECT article, dealer, price FROM shop WHERE price=19.95
Другое решение состоит в том, чтобы сортировать все строки по убыванию цены и получить только первую из них, используя специфическое для MySQL предложение LIMIT. Это предложение отсутствует в классическом SQL, но оно очень полезно, поскольку позволяет ограничить вывод строго заданным количеством строк:
SELECT article, dealer, price FROM shop ORDER BY price DESC LIMIT 1
! Если имеется несколько изделий с одинаковой ценой (например, каждое по 19.95), то LIMIT показывает только одно из них. Вообще-то это должно быть первое изделие, но поскольку мы переключили сортировку на обратный порядок с помощью слова DESC в запросе, то выведена будет информация о том изделии, которое имеет цену 19.95 и значится в таблице последним.