ГЛАВНАЯ     АРХИВ     НАПИСАТЬ АДМИНУ     ПОДПИСАТЬСЯ НА RSS     ВОЙТИ      

Поиск

Категории

Облако тегов

  << Предыдущий пост       Следующий пост >>  
От: inbruk
7. октября 2014 15:57


SQL

Часто возникает задача удаления дублирующихся строк на SQL. Предлагаю вам решение для случая, когда строки дублируются по любому набору полей, кроме поля первичного ключа CrawlingId. Проверка на дубли здесь делается по двум полям DBType, BookId, но если вам нужно проверять полные дубли ее нужно сделать по всем (кроме ключа в данном случае). Переделать под любое количество полей проверки очень просто.

DELETE FROM dbo.Books WHERE CrawlingId IN
(
  SELECT T2FR.CrawlingId
  FROM
  (
    SELECT 
      DBType, 
      BookId,
      RN = ROW_NUMBER()OVER(PARTITION BY DBType, BookId ORDER BY DBType, BookId),
      CrawlingId
    FROM dbo.Books
  ) T2FR
  WHERE T2FR.RN>1
)


Конструкция:
RN = ROW_NUMBER()OVER(PARTITION BY DBType, BookId ORDER BY DBType, BookId),
служит для построения номеров строк по группам строк с одинаковыми полями DBType, BookId

Похожие записи


Вопросы на собеседовании C#, Net, ASP.NET, SQL
Продолжая тему вопросов на собеседовании. Нашел еще одну подборку. Оригинал лежит здесь . Перенес, чтобы не затерялось. Есть вполне вменяемые ответы (хотя, на некоторые вопросы ответил бы по-другому). Ответы находятся после списка вопросов, я их не менял. 23. Что такое шаблон проектирования Model/View/Controller? Как и зачем его применяют? 2...

Способы заработка на сайте
На этом блоге было много постов про производство и раскрутку сайтов. Но пока не было про заработок на них. Пора исправить этот недочет. Здесь будут описаны по возможности не фантастичные, и не супер низко прибыльные способы. Также упор будет сделан именно на организацию процесса, а не технических деталях, которых в обилии в интернете. Несмотря на то, что как пр...

Silverlight, HTML5 и непрозрачная стратегия развития Microsoft
Оригинал статьи взят отсюда: Silverlight, HTML5 и непрозрачная стратегия развития Microsoft Автор: Peter Bright Переводчик: Mairon     По непонятным мне на данный момент причинам, похоже, что многие разработчики, присутствовавшие на недавней конференции PDC-2010 (Крупнейшая конференция Microsoft для разработчиков — Прим. переводчика), были сильн...

Комментарии

 
nomad 13.10.2014 10:46:05 #

действительно часто встречающаяся проблема...

Добавить комментарий




biuquote
  • Комментарий
  • Предпросмотр
Loading


  Сохранить комментарий