Горячее
Лучшее
Свежее
Подписки
Сообщества
Блоги
Эксперты
Войти
Забыли пароль?
или продолжите с
Создать аккаунт
Регистрируясь, я даю согласие на обработку данных и условия почтовых рассылок.
или
Восстановление пароля
Восстановление пароля
Получить код в Telegram
Войти с Яндекс ID Войти через VK ID
ПромокодыРаботаКурсыРекламаИгрыПополнение Steam
Пикабу Игры +1000 бесплатных онлайн игр Погрузись в удивительный мир настоящей рыбалки! Лови живую рыбу в естественных водоёмах, открой для себя новые рыбные места и поймай свой долгожданный трофей!

Реальная Рыбалка

Симуляторы, Мультиплеер, Спорт

Играть

Топ прошлой недели

  • solenakrivetka solenakrivetka 7 постов
  • Animalrescueed Animalrescueed 53 поста
  • ia.panorama ia.panorama 12 постов
Посмотреть весь топ

Лучшие посты недели

Рассылка Пикабу: отправляем самые рейтинговые материалы за 7 дней 🔥

Нажимая «Подписаться», я даю согласие на обработку данных и условия почтовых рассылок.

Спасибо, что подписались!
Пожалуйста, проверьте почту 😊

Помощь Кодекс Пикабу Команда Пикабу Моб. приложение
Правила соцсети О рекомендациях О компании
Промокоды Биг Гик Промокоды Lamoda Промокоды МВидео Промокоды Яндекс Маркет Промокоды Пятерочка Промокоды Aroma Butik Промокоды Яндекс Путешествия Промокоды Яндекс Еда Постила Футбол сегодня
0 просмотренных постов скрыто
3
VelStyling
VelStyling
Серия SQL: знакомство

Неочевидные факты про MIN и MAX⁠⁠

1 месяц назад

Простые функции. Кажется, что они находят просто минимум и максимум. Но есть и особенность их использования для интерпретации результатов. Об этом далее.

Неочевидные факты про MIN и MAX

А пока подписывайся на мой канал На связи: SQL Там я публикую посты про особенности и нюансы SQL. Этот канал про то, как не бояться баз данных, понимать, что такое JOIN, GROUP BY и почему NULL ≠ 0. Его я веду с нуля подписчиков. Присоединяйся!

MIN и MAX — не только про числа

Они работают с любыми типами данных:

  • датами (MIN(date) даст самую раннюю дату),

  • строками (MAX(name) вернёт последнюю в алфавитном порядке),

  • булевыми значениями (MIN(bool) — false, MAX(bool) — true).

Иногда этим можно ловко воспользоваться — например, чтобы узнать, есть ли хоть один true:

SELECT MAX(is_active) FROM users;

Если вернёт true — значит, кто-то активен. Красиво и лаконично.

MIN и MAX — не только агрегатные, но и оконные функции

Можно получить минимум или максимум в рамках окна, не теряя детализацию:

SELECT

user_id,

date,

MAX(date) OVER (PARTITION BY user_id) AS last_activity

FROM logins;

Так можно легко вытащить, когда пользователь последний раз заходил — без группировки и без JOIN.

MIN/MAX и NULL

Они игнорируют NULL.
То есть если у тебя все значения NULL, то результат — NULL.
Это часто ломает аналитику, особенно при сравнении с COALESCE или при объединении данных.

SELECT MAX(COALESCE(score, 0)) -- вернёт 0, а не NULL

→ Иногда важно явно заменить NULL, чтобы не получить "пустой" результат.

MIN/MAX могут ускорить выборку

Если в таблице есть индекс по нужному полю —
MIN() и MAX() используют только крайний элемент индекса.
Это значит, что:

SELECT MAX(price) FROM products;

может пройтись не по миллиону строк, а просто взять последнее значение из B-tree индекса.
То есть — мгновенно.

Можно найти строку с минимальным/максимальным значением

Классическая боль аналитика: как вытащить не просто максимум, а всю строку, где он встретился.

💡 Один из лучших способов — оконная функция + фильтр:

SELECT *

FROM (

SELECT *,

ROW_NUMBER() OVER (ORDER BY salary DESC) AS rn

FROM employees

) t

WHERE rn = 1;

→ Получаем сотрудника с максимальной зарплатой.
Без подзапросов, без JOIN, без боли.

Неочевидный кейс: поиск экстремумов в группах

SELECT department, MIN(salary), MAX(salary)

FROM employees

GROUP BY department;

Классика, но важно:
разница между MAX и MIN = разброс значений, полезный показатель в аналитике (например, зарплат).

💬 Если хочешь больше таких разборов с реальными кейсами SQL без воды — подписывайся на мой Telegram 👉На связи: SQL
Там я рассказываю про SQL так, чтобы стало интересно даже тем, кто раньше его ненавидел 😄

Показать полностью 1
[моё] SQL Аналитика Аналитик База данных Microsoft Excel Анализ данных Min Саморазвитие Эмоциональное выгорание Длиннопост
4
7
PythonGet
PythonGet
Программирование на python
Серия Python_get

Котики на вершине горы: как max и min помогают найти самого пушистого и самого худого кота⁠⁠

10 месяцев назад

Представьте себе, что вы — владелец кошачьего приюта. У вас есть десятки котиков, и каждый из них уникален: кто-то пушистый, как облако, кто-то худой, как карандаш, а кто-то просто самый милый на свете. Как же выбрать самого-самого? В программировании для этого есть два верных друга — функции `max` и `min`. Давайте разберёмся, как они работают и как их можно использовать.

О чём речь?

Функции max и min — это инструменты, которые помогают находить максимальное и минимальное значение в коллекциях данных. Но их суперсила в том, что они могут принимать аргумент key, позволяя вам задавать свои правила для поиска. Это как если бы вы сказали: "Найди мне самого пушистого кота, а не самого большого!" или "Покажи мне самого ленивого, а не самого тяжёлого!"

Как это работает?

Давайте разберёмся на примере.

Функции max и min работают с любыми итерируемыми объектами: списками, кортежами, строками и даже словарями. Если вы передаёте аргумент key, то вместо сравнения самих элементов Python будет использовать результат вызова функции, переданной в key.

💡 Что здесь происходит?

  • Мы передаём список словарей (каждый словарь описывает кота).

  • В key передаётся lambda, которая говорит: "Сравнивай котиков по их пушистости или весу".

  • max и min возвращают весь словарь, соответствующий максимальному или минимальному значению.

А теперь немного магии!

А теперь давайте посмотрим, как max и min могут работать с объектами и строками.

🐾 Пример с объектами:

Вы можете использовать max и min для работы с пользовательскими классами. Например, если у вас есть класс, описывающий котиков, вы можете найти самого ловкого или самого ленивого.

🐾 Пример со строками:

Функции max и min также работают со строками. Вот несколько интересных примеров:

1️⃣ Найдём слово с максимальной длиной:

2️⃣ Найдём слово, которое идёт последним в алфавитном порядке:

3️⃣ Найдём слово с минимальной длиной:

4️⃣ Найдём слово, которое идёт первым в алфавитном порядке:

💡 Фишка:

Вы можете комбинировать max и min с любыми функциями, которые возвращают числовое или строковое значение. Это открывает огромные возможности для анализа данных.

Теперь вы знаете, как использовать `max` и `min` для поиска самого пушистого, самого лёгкого или самого ловкого кота. Эти функции — настоящие мастера сравнения, которые помогут вам в самых разных задачах.

🐾 О чём ещё вы хотите почитать? Что бы вы хотели узнать? Напишите, и я с радостью подготовлю для вас новый пост!

Показать полностью 6
[моё] Программирование Обучение Max Min Python Длиннопост
0
A.13

На меня накинутся но я это скажу. Мне нравятся эти персы. И мне бы хотелось про них спин-офф. Но увы этого не будет.⁠⁠

7 лет назад
На меня накинутся но я это скажу. Мне нравятся эти персы. И мне бы хотелось про них спин-офф. Но увы этого не будет.
[моё] Gaiius Sandbar Siiverstream Oceiius Yona Smoider Min
9
49
Nereid
Nereid

Не беременна!⁠⁠

9 лет назад
Не беременна!
Показать полностью 1
Min Fail by error Комиксы Беременность
19
549
ktun
ktun

Всем можно, а мне нет⁠⁠

10 лет назад
Всем можно, а мне нет
Комиксы Movepics Min Купальник
64
Посты не найдены
О нас
О Пикабу Контакты Реклама Сообщить об ошибке Сообщить о нарушении законодательства Отзывы и предложения Новости Пикабу Мобильное приложение RSS
Информация
Помощь Кодекс Пикабу Команда Пикабу Конфиденциальность Правила соцсети О рекомендациях О компании
Наши проекты
Блоги Работа Промокоды Игры Курсы
Партнёры
Промокоды Биг Гик Промокоды Lamoda Промокоды Мвидео Промокоды Яндекс Маркет Промокоды Пятерочка Промокоды Aroma Butik Промокоды Яндекс Путешествия Промокоды Яндекс Еда Постила Футбол сегодня
На информационном ресурсе Pikabu.ru применяются рекомендательные технологии