Функция MIN в SQL используется для поиска записи с минимальным значением среди набора записей.
Чтобы понять функцию MIN, рассмотрим таблицу EMPLOYEE_TBL, которая содержит следующие записи:
SQL> SELECT * FROM employee_tbl; +----+----------+------------+--------------------+ | id | name | work_date | daily_typing_book | +----+----------+------------+--------------------+ | 1 | Dima | 2017-02-01 | 250 | | 2 | Ruslan | 2017-03-02 | 220 | | 3 | AndreyEx | 2017-01-11 | 170 | | 3 | AndreyEx | 2017-02-02 | 100 | | 4 | Masha | 2017-03-12 | 220 | | 5 | Roma | 2017-06-23 | 300 | | 5 | Roma | 2017-03-12 | 350 | +----+----------+------------+--------------------+ 7 rows in set (0.00 sec)
Теперь предположим, что на основе приведенной выше таблице вы хотите получить минимальное значение daily_typing_books, то вы можете сделать это просто с помощью следующей команды:
SQL> SELECT MIN(daily_typing_books) -> FROM employee_tbl; +-------------------------+ | MIN(daily_typing_books) | +-------------------------+ | 100 | +-------------------------+ 1 row in set (0.00 sec)
Вы можете найти все записи с минимальным значением для каждого имени, используя GROUP BY следующим образом:
SQL> SELECT id, name, MAX(daily_typing_book) -> FROM employee_tbl GROUP BY name; +----+----------+-------------------------+ | id | name | MAX(daily_typing_book) | +----+----------+-------------------------+ | 3 | AndreyEx | 100 | | 4 | Masha | 220 | | 1 | Dima | 250 | | 2 | Ruslan | 220 | | 5 | Roma | 300 | +----+----------+-------------------------+ 5 rows in set (0.00 sec)
Вы можете использовать функцию MIN наряду с Функцией MAX, чтобы выяснить минимальное значение. Попробуйте следующий пример:
SQL> SELECT MIN(daily_typing_books) least, -> MAX(daily_typing_books) max -> FROM employee_tbl; +-------+------+ | least | max | +-------+------+ | 100 | 350 | +-------+------+ 1 row in set (0.01 sec)