0
이전 프로젝트에서 동기화를 다시 작성하고 가능한 한 이전 코드와 비슷하게 유지하려고합니다.FilterClause에서 내부 조인 사용
이전 코드에는 FilterClause
과 유사한 SQL 코드가 있습니다. 그리고 지금까지는 이전 코드 선택 식을 해당 FilterClause로 변환하는 것이 매우 간단했습니다. 예를 들어 :
FilterClauses 정의 가져 또는 WHERE 절 SQL을 설정 ...
그러나...FilterClause = "num_id = @id";
가, 지금은 문제로 실행 한 :
SELECT * FROM dbo.table_a WHERE num_id = @id
가로 번역 한 (WHERE 키워드없이) 결과 테이블을 기본 테이블에서 필터링하는 데 사용됩니다. 하지만 지금 내 SQL 표현식은 다음과 같습니다
SELECT *
FROM dbo.table_a
INNER JOIN
(
SELECT DISTINCT(num_id)
FROM dbo.link_table_ab
WHERE link_table_ab.b_index = 5
) T2 ON table_a.num_id= T2.num_id
그래서 문제는 어떻게해야합니까 ... 차 조회에는 WHERE이 없다는 것입니다?
얼마나 큰 영향을 주나요? – Markus
@Markus. . . 원래 프레임 된 것처럼 결합과 매우 유사해야합니다. 때로는'존재한다'는'in'보다 조금 빠르지 만, 그것은 데이터와 시스템에 의존 할 수 있습니다. –
DISTINCT가 문제를 일으키지 않습니까? – Markus