RANK() vs DENSE_RANK(): ошибка, которая ломает топ-N в проде
При работе с данными в SQL рано или поздно возникает задача ранжирования: топ-5 продуктов по продажам, рейтинг сотрудников по KPI, распределение клиентов по категориям.На первый взгляд RANK() и DENSE_RANK() делают почти одно и то же. На тестовых данных разница может быть вообще незаметна. Но в проде именно здесь час...
При работе с данными в SQL рано или поздно возникает задача ранжирования: топ-5 продуктов по продажам, рейтинг сотрудников по KPI, распределение клиентов по категориям.На первый взгляд RANK() и DENSE_RANK() делают почти одно и то же. На тестовых данных разница может быть вообще незаметна. Но в проде именно здесь часто начинаются ошибки: — топ-3 внезапно возвращает 5 строк; — дашборд "врёт"; — backend-логика начинает вести себя не так, как ожидалось; — запрос, который вчера работал быстро, сегодня уходит в disk spill.Две самые популярные функции для ранжирования — RANK() и DENSE_RANK(). Ниже разберём, чем они отличаются, где именно ошибаются разработчики и аналитики, и что важно понимать: не только что делает оконная функция, но и сколько она стоит на больших объёмах данных.
Связанные теги
Компании и люди
Линия сюжета
Продолжить следить за темой
Переходите к связанным материалам, страницам сущностей и активным линиям сюжета.
LLM Firewall: устарел, не успев родиться? Почему защита чатов не работает в мире AI-агентов
История про сумасшедшую скорость изменений. Пока мы в Ideco создавали задачи в Jira, исследовали технологии и возможность реализации модуля «LLM Firewall» в Ideco NGFW – ландшаф...
Volga: движок обработки real-time данных для AI/ML — аналог Spark и Flink на Rust (Arrow + DataFusion)
Volga — open-source движок обработки данных, созданный как альтернатива Apache Spark и Apache Flink и ориентированный на требования real-time AI/ML систем: консистентное вычисле...
Я работаю в Б-152 и потрогал новый Privacy Box раньше всех. Честно о том, что реально меняет работу
Скажу сразу: я работаю в компании, которая делает этот продукт. Предвзятость есть и никуда не денется. Но я использую Privacy Box в настоящих клиентских проектах. Не для демонст...
Как мы создали топографические карты для пользователей MapMagic. Часть 2: Инфраструктура, автоматизация и экономия
Как мы создали собственный картографический пайплайн для топокарт MapMagic: часть вторая — как наладили автоматическое обновление карт, рендеринг растровых тайлов и их отдачу ка...
Сценарии «Судного дня»: чему реальные катастрофы научили архитекторов резервного копирования
В ИТ любят слово «отказоустойчивость». Оно звучит инженерно и успокаивающе. Кластеры, зеркала, репликации — всё это создаёт ощущение контролируемости. Но последние десять лет по...
Фишинг 2025–2026: от социальной инженерии к промышленным конвейерам PhaaS
Современный ландшафт киберугроз демонстрирует окончательную трансформацию фишинга из набора разрозненных мошеннических писем в зрелую сервисную индустрию, функционирующую по кан...
Рекламный слот
Встроенный блок в статье
Зарезервированный партнерский слот для релевантных инструментов, сервисов и аккуратных редакционных интеграций.
Похожие статьи
Еще материалы, которые пересекаются по тегам, источнику или категории.
LLM Firewall: устарел, не успев родиться? Почему защита чатов не работает в мире AI-агентов
История про сумасшедшую скорость изменений. Пока мы в Ideco создавали задачи в Jira, исследовали технологии и возможность реализации модуля «LLM Firewall» в Ideco NGFW – ландшаф...
Volga: движок обработки real-time данных для AI/ML — аналог Spark и Flink на Rust (Arrow + DataFusion)
Volga — open-source движок обработки данных, созданный как альтернатива Apache Spark и Apache Flink и ориентированный на требования real-time AI/ML систем: консистентное вычисле...
Я работаю в Б-152 и потрогал новый Privacy Box раньше всех. Честно о том, что реально меняет работу
Скажу сразу: я работаю в компании, которая делает этот продукт. Предвзятость есть и никуда не денется. Но я использую Privacy Box в настоящих клиентских проектах. Не для демонст...
Как мы создали топографические карты для пользователей MapMagic. Часть 2: Инфраструктура, автоматизация и экономия
Как мы создали собственный картографический пайплайн для топокарт MapMagic: часть вторая — как наладили автоматическое обновление карт, рендеринг растровых тайлов и их отдачу ка...
Еще материалы от Habr
Свежие публикации и продолжение темы от той же редакции.
LLM Firewall: устарел, не успев родиться? Почему защита чатов не работает в мире AI-агентов
История про сумасшедшую скорость изменений. Пока мы в Ideco создавали задачи в Jira, исследовали технологии и возможность реализации модуля «LLM Firewall» в Ideco NGFW – ландшаф...
Volga: движок обработки real-time данных для AI/ML — аналог Spark и Flink на Rust (Arrow + DataFusion)
Volga — open-source движок обработки данных, созданный как альтернатива Apache Spark и Apache Flink и ориентированный на требования real-time AI/ML систем: консистентное вычисле...
Я работаю в Б-152 и потрогал новый Privacy Box раньше всех. Честно о том, что реально меняет работу
Скажу сразу: я работаю в компании, которая делает этот продукт. Предвзятость есть и никуда не денется. Но я использую Privacy Box в настоящих клиентских проектах. Не для демонст...
Как мы создали топографические карты для пользователей MapMagic. Часть 2: Инфраструктура, автоматизация и экономия
Как мы создали собственный картографический пайплайн для топокарт MapMagic: часть вторая — как наладили автоматическое обновление карт, рендеринг растровых тайлов и их отдачу ка...