У меня есть база данных с повторяющимися значениями. В частности, SiteCode, LastName, FirstName, DateofService, Payer, BilledAmount, NetReceivable и ContractualDiscount объединяются для формирования записей, которые повторяются по всей этой таблице.
Я хотел бы удалить все, кроме одного экземпляра этих полей, и пытаюсь сделать это, выбрав только один NetBilledHistoryID (который является уникальным полем для каждой записи в таблице).
К сожалению, когда я запускаю этот запрос, я все еще получаю дублированные значения.
Как я могу исправить это, чтобы мой запрос на выборку исключил эти дубликаты? Или, что еще лучше, я должен использовать другую технику запросов вместе?
SELECT *
FROM [Reports].[dbo].[NetBilledHistory] t1
WHERE EXISTS (
SELECT 1 FROM [Reports].[dbo].[NetBilledHistory] AS t2
WHERE t2.SiteCode = t1.SiteCode
AND t2.LastName = t1.LastName
AND t2.FirstName = t1.FirstName
AND t2.DateofService = t1.DateofService
AND t2.Payer = t1.Payer
AND t2.BilledAmount = t1.BilledAmount
AND t2.NetReceivable = t1.NetReceivable
AND t2.ContractualDiscount = t1.ContractualDiscount
AND t2.NetBilledHistoryID < t1.NetBilledHistoryID)