Найти дубликаты записей в таблице с помощью SQL Server - PullRequest
41 голосов
/ 24 марта 2012

Я проверяю таблицу с данными об уровне транзакций сайта электронной коммерции и нахожу точные ошибки.

Я хочу, чтобы вы помогли найти повторяющиеся записи в таблице из 50 столбцов на SQL Server.

Предположим, мои данные:

OrderNo shoppername amountpayed city Item       
1       Sam         10          A    Iphone
1       Sam         10          A    Iphone--->>Duplication to be detected
1       Sam         5           A    Ipod
2       John        20          B    Macbook
3       John        25          B    Macbookair
4       Jack        5           A    Ipod

Предположим, я использую следующий запрос:

Select shoppername,count(*) as cnt
from dbo.sales
having count(*) > 1
group by shoppername

вернет мне

Sam  2
John 2

Но я не хочу находить дубликаты чуть более 1 или 2 столбцов. Я хочу найти дубликат по всем столбцам в моих данных. Я хочу результат как:

1       Sam         10          A    Iphone

Ответы [ 13 ]

0 голосов
/ 13 января 2016

Выберите EventID, считать () как cnt из dbo.EventInstances группировать по EventID имеющий количество ()> 1

0 голосов
/ 07 января 2016
with x as (
select shoppername,count(shoppername)
              from sales
              having count(shoppername)>1
            group by shoppername)
select t.* from x,win_gp_pin1510 t
where x.shoppername=t.shoppername
order by t.shoppername
0 голосов
/ 17 апреля 2015

Выбрать * из dbo.sales группа по имени покупателя имеющий (кол (элемент)> 1)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...