Проблем:
Искате да намерите най-малката числова стойност в колона.
Пример:
Нашата база данни има таблица с име employment с данни в следните колони:id , first_name , last_name , department и salary .
| id | first_name | фамилно_име | отдел | заплата |
|---|---|---|---|---|
| 1 | Ели | Мартинци | маркетинг | 1200 |
| 2 | Мартин | Джонсън | финанси | 2300 |
| 3 | Майкъл | Джейкъбс | производство | 1100 |
| 4 | Стивън | Ковалски | маркетинг | 4300 |
| 5 | Стенли | Милър | маркетинг | 3500 |
| 6 | Джени | Кафяв | финанси | 5000 |
| 7 | Маргарет | Зелено | маркетинг | 1500 |
| 8 | Лиза | Томас | производство | 2800 |
Нека намерим най-ниската заплата сред всички служители.
Решение:
SELECT MIN(salary) as min_salary FROM employment;
Ето резултата:
| мин.заплата |
|---|
| 1100 |
Дискусия:
За да намерите минималната стойност на колона, използвайте MIN() агрегатна функция; той приема за свой аргумент името на колоната, за която искате да намерите минималната стойност. Ако не сте посочили други колони в SELECT клауза, минимумът ще бъде изчислен за всички записи в таблицата. В нашия пример заявката връща минималната заплата сред всички служители.
Разбира се, тъй като това е агрегатна функция, MIN() може да се използва и с групи. Например, ако искаме да намерим минималната заплата за всеки отдел, можем да напишем следната заявка:
SELECT department, MIN(salary) as min_salary FROM employment GROUP BY department;
Тази заявка връща минималната заплата за всеки отдел:
| отдел | мин.заплата |
|---|---|
| маркетинг | 1200 |
| финанси | 2300 |
| производство | 1100 |