TGViewer
Data Science. SQL hub Data Science. SQL hub @sqlhub · 36K subscribers
Post #2001 5.83K
🔥SQL ТРЮК: Как выбрать первые N строк в каждой группе

Вот полезный трюк: используем функцию роз намбер с патришн бай чтобы нумеровать строки внутри каждой группы, а потом фильтруем по номеру.

Ты получишь первые два события для каждого пользователя. Можно легко адаптировать под «топ‑пять товаров в каждой категории.

Этот трюк работает в большинстве современных СУБД, поддерживающих оконные функци


sql
WITH ranked AS (
SELECT
user_id,
event_time,
event_type,
ROW_NUMBER() OVER (
PARTITION BY user_id
ORDER BY event_time ASC
) AS rn
FROM user_events
)
SELECT *
FROM ranked
WHERE rn <= 2;


📌 Этот запрос выберет первые 2 события *по каждому пользователю*. Просто, чисто и кросс‑совместимо — работает в PostgreSQL, MySQL 8+, SQL Server и других.

https://www.youtube.com/shorts/X5CJn1eLW20

@sqlhub
  • 👍 23
  • 🔥 7
  • 😁 5
  • ❤ 3
More from @sqlhub
  1. Sep 27, 2026💀 Claude Code за 103 секунды удалил более 48 тысяч файлов Пользователь Claude Code сообщи…
  2. Sep 25, 2026Тысячи ИИ-агентов одновременно читают продакшен-базу. Что происходит с PostgreSQL? Google…
  3. Sep 24, 2026Softmax простыми словами: что значат 66,5% в ответе нейросети? Softmax простыми словами: C…
  4. Sep 24, 2026🔥Один слой данных вместо цепочки копий между системами В традиционной аналитической инфра…
  5. Sep 23, 2026⚡️ SQL-задача с опасным подвохом Какой баланс получит аккаунт после выполнения запроса в P…
  6. Sep 22, 2026🌟 Samsone: открытые аудиоязыковые модели для смартфонов Samsung опубликовали Samsone - се…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →