tgoop.com/sqlhub/2050
Create:
Last Update:
Last Update:
🧩 SQL хитрый трюк
Хотите быстро найти дубликаты в таблице — но не просто значения, а ещё и сразу оставить только уникальные строки?
Вместо сложных подзапросов используйте `ROW_NUMBER()` с PARTITION BY
:
WITH numbered AS (
SELECT
id,
email,
ROW_NUMBER() OVER (PARTITION BY email ORDER BY id) AS rn
FROM users
)
SELECT id, email
FROM numbered
WHERE rn = 1;
📌 Что происходит:
-
PARTITION BY email
группирует строки по email -
ROW_NUMBER()
нумерует их внутри группы -
WHERE rn = 1
оставляет только первую запись (а все дубликаты убираются)💡 Так можно элегантно чистить таблицы от дублей без лишних вложенных запросов.
@sqlhub
BY Data Science. SQL hub
Share with your friend now:
tgoop.com/sqlhub/2050