SQL Server 2008을 실행하고 있으며 일부 저장되지 않은 데이터에 대해 쿼리를 실행하려고합니다. 처리하지 않고 정리하려고합니다 (수백만 행 처리). 와). 내가 가지고있는 로그 테이블은 하나의 테이블에 쉼표로 구분 된 문자열로 된 일부 FK 데이터와 다른 테이블에있는 정수 PK입니다. 기본 테이블의 적절한 PK ints에 정수의 FK 목록에 참여할 수 있기를 바랍니다. 내 쿼리가이 같은 것입니다 : D.ID는 정수 기본 키 동안INT 열을 쉼표로 구분 된 INT 목록에 결합합니다.
SELECT
L.*
FROM MyLogs L (NOLOCK)
INNER JOIN Details D (NOLOCK) ON L.SearchValue = D.ID
위의 쿼리에서, L.SearchValue는 "123,456,7890"를 포함하고 있습니다. 어떤 종류의 효율적인 방식으로 이들을 결합 할 수있는 방법이 있습니까? 아니면 그냥 내 운명을 받아 스크립트로 작업하여 이러한 모든 쉼표로 구분 된 값을 별도의 행으로 나누어야합니까?
모든 해답을 주셔서 감사합니다. 예상했던대로 정확하게 맞습니다 (인정하기 싫지만). 나는 그 대본을 정리하고 나서 내 손가락을 교차시킬거야. 아마도 Stu가 제안한 스크립트를 사용하여 변환을 수행하게 될 것입니다. 행운을 빌어 요. –