Дублирующиеся строки в запросе? (SQL Server) - PullRequest
0 голосов
/ 02 октября 2019

Позвольте мне начать с того, что я ОЧЕНЬ новичок в SQL, пришедший из системы Sysadmin.

Я пытаюсь извлечь данные на основе определенного поля, заполненного определенной строкой. Позвольте мне показать вам мой код, так что вы, вероятно, можете немного посмеяться (некоторые имена таблиц были изменены, также игнорируйте даты, это фактически переменные в отчете, это всего лишь пример):)

SELECT 
    q2.Date AS Date,
    q2.[Language] AS [Language],
    q2.[User_Id] AS [UserName],
    q2.PhoneNumber AS [Phone],
    q1.Ending AS [Ending],
    q2.Score AS [Score]
FROM
    (SELECT         
         CA.ANI, DI.Disposition, CA.StartWrap, CA.NumTransfer
     FROM            
         [Gaetano].[dbo].[Call] CA 
     JOIN
         [Gaetano_Common].[dbo].[End] DI ON DI.Ending = CA.Ending
     WHERE           
         CA.NumTransfer = 'ESTA' 
         AND CA.EndDate BETWEEN '2019-09-24' AND '2019-09-25') q1
JOIN
    (SELECT        
         Pr.Date AS SurveyDate, 
         Pr.[Language] AS [Language], 
         [User_Id] AS [User], 
         acd.ANI AS [PhoneNumber], 
         Pr.Score AS [Score], 
     FROM            
         [dbo].[GaetanoPr] Pr 
     INNER JOIN
         [dbo].[ACDGaetano] acd ON acd.SeqNum = Pr.SeqNum 
                                AND NOT acd.Service_Id IS NULL 
                                AND NOT acd.[User_Id] IS NULL 
     WHERE
         Pr.Date BETWEEN '2019-09-24' AND '2019-09-25') q2 ON q2.PhoneNumber = q1.ANI

Что я пытаюсь сделать, так это то, что единственные результаты, которые я получаю, это те, которые имеют значение 'ESTA' в столбце CA.NumTransfer. Я думаю, что проблема в том, что когда я соединяю q1 и q2, в результате всегда получается, что несколько строк дублируются.

...