Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Как удалить дубликат?  [new]
wannagopro
Member

Откуда:
Сообщений: 13
В таблице есть записи вида:
ChildId ParentId Limit
196655 544679 49680
196656 544679 138000

У нескольких ChildId(уникальный) может быть один ParentId.
Возможно ли удалить строку с меньшим значением Limit и равным ParentId(т.е. в данном примере удалим 1ую строку, т.к. в записи с таким же ParentId Limit больше)?

Заранее благодарен за помощь!
21 ноя 12, 09:46    [13504941]     Ответить | Цитировать Сообщить модератору
 Re: Как удалить дубликат?  [new]
Добрый Э - Эх
Guest
Возможно
21 ноя 12, 09:50    [13504955]     Ответить | Цитировать Сообщить модератору
 Re: Как удалить дубликат?  [new]
iap
Member

Откуда: Москва
Сообщений: 47142
WITH CTE(N)AS(SELECT ROW_NUMBER()OVER(PARTITION BY ParentId ORDER BY Limit DESC) FROM T)
DELETE CTE WHERE N>1;
21 ноя 12, 09:51    [13504961]     Ответить | Цитировать Сообщить модератору
 Re: Как удалить дубликат?  [new]
wannagopro
Member

Откуда:
Сообщений: 13
Как оперативно,благодарю,все идеально!!
21 ноя 12, 09:55    [13504978]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить