- Популярные видео
- Авто
- Видео-блоги
- ДТП, аварии
- Для маленьких
- Еда, напитки
- Животные
- Закон и право
- Знаменитости
- Игры
- Искусство
- Комедии
- Красота, мода
- Кулинария, рецепты
- Люди
- Мото
- Музыка
- Мультфильмы
- Наука, технологии
- Новости
- Образование
- Политика
- Праздники
- Приколы
- Природа
- Происшествия
- Путешествия
- Развлечения
- Ржач
- Семья
- Сериалы
- Спорт
- Стиль жизни
- ТВ передачи
- Танцы
- Технологии
- Товары
- Ужасы
- Фильмы
- Шоу-бизнес
- Юмор
⚡️ SQL-совет по оптимизации - DISTINCT ON + правильный индекс (PostgreSQL) #coding #python #sql
SQL-совет по оптимизации
DISTINCT ON часто недооценивают, но в PostgreSQL это один из самых быстрых способов получить «последнюю запись на группу» без подзапросов и оконных функций.
Проблема
Нужно выбрать, например, последнюю запись для каждого user_id, отсортированную по created_at.
Типичные, но медленные решения
- оконная функция ROW_NUMBER
- подзапрос с GROUP BY и JOIN
Они работают, но на больших таблицах быстро становятся узким местом.
Редкое и очень быстрое решение
DISTINCT ON в сочетании с индексом, который совпадает с ORDER BY.
Как это работает.
PostgreSQL берет первую строку для каждой группы согласно ORDER BY и сразу идет дальше.
Без полной сортировки результата и без оконных функций.
Ключевой момент оптимизации
Без правильного индекса вся магия пропадает.
Что дает корректный индекс
- Index Scan вместо Seq Scan
- отсутствие дополнительной сортировки
- высокая скорость даже на миллионах строк
DISTINCT ON - это PostgreSQL-специфичный, но крайне мощный трюк.
Если ты работаешь с Postgres, это один из лучших способов ускорить такие запросы.
Подписывайся, больше фишек каждый день !
Видео ⚡️ SQL-совет по оптимизации - DISTINCT ON + правильный индекс (PostgreSQL) #coding #python #sql канала Uproger / Machine Learning / Ai
DISTINCT ON часто недооценивают, но в PostgreSQL это один из самых быстрых способов получить «последнюю запись на группу» без подзапросов и оконных функций.
Проблема
Нужно выбрать, например, последнюю запись для каждого user_id, отсортированную по created_at.
Типичные, но медленные решения
- оконная функция ROW_NUMBER
- подзапрос с GROUP BY и JOIN
Они работают, но на больших таблицах быстро становятся узким местом.
Редкое и очень быстрое решение
DISTINCT ON в сочетании с индексом, который совпадает с ORDER BY.
Как это работает.
PostgreSQL берет первую строку для каждой группы согласно ORDER BY и сразу идет дальше.
Без полной сортировки результата и без оконных функций.
Ключевой момент оптимизации
Без правильного индекса вся магия пропадает.
Что дает корректный индекс
- Index Scan вместо Seq Scan
- отсутствие дополнительной сортировки
- высокая скорость даже на миллионах строк
DISTINCT ON - это PostgreSQL-специфичный, но крайне мощный трюк.
Если ты работаешь с Postgres, это один из лучших способов ускорить такие запросы.
Подписывайся, больше фишек каждый день !
Видео ⚡️ SQL-совет по оптимизации - DISTINCT ON + правильный индекс (PostgreSQL) #coding #python #sql канала Uproger / Machine Learning / Ai
Комментарии отсутствуют
Информация о видео
24 декабря 2025 г. 11:18:13
00:01:15
Другие видео канала





















