여러 행을 기반으로 두 개의 테이블을 결합하려고하는데 올바른 방법을 찾을 수 없습니다. 표 2 정확히 행과 일치여러 행에 MS SQL 일치 테이블이 있습니다.
표
Id Location LocationNo
1 1 1
1 2 2
1 3 3
2 1 1
2 2 2
3 2 1
3 1 2
3 3 3
4 1 1
4 2 2
4 3 3
4 4 4
표 2
Location LocationNo
1 1
2 2
3 3
내가 표에서 이드 싶어 :
표는 다음과 같은 형태 . 반환이 Id 1이어야합니다.
쿼리를 시도했지만 결과가 예상과 다를 수 있습니다.
SELECT t.Id
FROM table1 t1
WHERE EXISTS (SELECT 1
FROM table2 t2
WHERE t1.LocationId = t2.LocationId
AND t1.LocationNo = t2.LocationNo)
의견이 있으십니까? 감사.
편집 : 나는 결과는 널 (NULL)이 될 것을 기대하고이 경우를 들어 표 2
Location LocationNo
1 1
2 2
3 3
5 4
첫 번째 cte는 Id에 의해 groupped 안된다?
또한 별칭 a는 t1이어야합니다.
–
@CodrutMerlusca - 예, 놓친 적이 있습니다. –
@ Y.B. 당신은 이것을 읽었습니까? 반환 값은 Id 1이어야합니다. * 쿼리가 Id'1' 만 반환하는지 여부 –