2017-12-29 14 views
1

세 개의 테이블이 있습니다. Table 1Table 2, User nameTable 3에 가입 할 수 있습니다. Table 1ip 열에 가입 할 수 있습니다.다른 열이있는 세 개의 테이블이있는 내부 조인

다음은 작성한 샘플 SQL 스크립트입니다.

SELECT R.[First Time], L.[USER], R1.[Destination Port] , L1.[IP Address] AS 'L1 IP Address',L2.[IP Address] AS 'L2 IP Address' 
    FROM [SAPA_SOCTemp_v1].[dbo].[LookUp_15_75] AS L 
INNER JOIN [SAPA_SOCTemp_v1].[dbo].[Raw_15_244] AS R 
    ON L.[USER]=R.[Source User] 
INNER JOIN [SAPA_SOCTemp_v1].[dbo].[Raw_15_246] AS R1 
    ON L.[IP]=R1.[Source IP] 
LEFT JOIN [SAPA_SOCTemp_v1].[dbo].[LookUp_15_76] AS L1 ON R1.[Destination IP]=L1.[IP Address] 
LEFT JOIN [SAPA_SOCTemp_v1].[dbo].[LookUp_15_77] AS L2 ON R1.[Destination IP]=L2.[IP Address] 
WHERE L.[USER]='support.treasury1' 
    AND R.[Source User]='support.treasury1' 

이것은 내가 얻는 결과입니다.

Getting

내가 기대하고있는 출력됩니다.

Expected Result

데이터

Table Structure and data

+0

support.treasury2 및 support.treasury3의 출처는 어디입니까? – Vashi

+0

@Vashi 내 질문을 업데이트했습니다 – Jzl

+1

어떻게 13:14에 하나의 항목이 있고 13:55에 두 개의 항목이 있습니까? 그 논리는 무엇입니까? – Vashi

답변

0

당신은 group by을 사용할 수와 세 개의 테이블 구조;

SELECT R.[First Time], L.[USER], R1.[Destination Port] 
FROM [SAPA_SOCTemp_v1].[dbo].[LookUp_15_75] AS L 
INNER JOIN [SAPA_SOCTemp_v1].[dbo].[Raw_15_244] AS R ON L.[USER]=R.[Source User] 
INNER JOIN [SAPA_SOCTemp_v1].[dbo].[Raw_15_246] AS R1 ON L.[IP]=R1.[Source IP] 
group by R.[First Time], L.[USER], R1.[Destination Port] 
+0

No.i 두 번째 이미지에서 지정한 세 개의 열이있는 결과가 필요합니다. – Jzl

+0

작동하지 않습니다. – Jzl

+0

"작동하지 않음"을 정의하고 자세한 정보를 제공해주십시오. 그것은 당신을 도울 수있는 유일한 방법입니다. – lucky

0

일부 가능한 조건이 있습니다. 먼저 위에서 언급 한 테이블에서 다른 고유 키를 시도 할 수 있습니다.

둘째, DISTINCT을 시도해야합니다. 이 코드는 다음에 가까워 질 가능성이 높습니다.

SELECT DISTINCT R.[First Time], L.[USER], R1.[Destination Port] 
FROM [SAPA_SOCTemp_v1].[dbo].[LookUp_15_75] AS L 
INNER JOIN [SAPA_SOCTemp_v1].[dbo].[Raw_15_244] AS R ON L.[USER]=R.[Source User] 
INNER JOIN [SAPA_SOCTemp_v1].[dbo].[Raw_15_246] AS R1 ON L.[IP]=R1.[Source IP] 
WHERE L.[USER]='support.treasury1' AND R.[Source User]='support.treasury1' 
ORDER BY R.[First Time] 

그래도 도움이되지 않는다면. 위의 표에 대한 논리에 대해 자세히 알려주십시오.