FIX: CROSS APPLY 절을 사용 하 여 SQL Server 2012 또는 SQL Server 2008 r 2에서 전체 조인 쿼리를 실행할 때 잘못 된 결과

기술 자료 번역 기술 자료 번역
기술 자료: 2800797 - 이 문서가 적용되는 제품 보기.
Microsoft Microsoft SQL Server 2008 R2 서비스 팩 2 (SP2) 수정 프로그램을 다운로드 가능한 하나의 파일로 배포합니다. 수정 누적 되는 형태 이므로 각 새 릴리스의 모든 핫픽스와 들어 및 수정 릴리스에 이전 SQL Server 2008 R2 서비스 팩 2에 포함 된 모든 보안 수정.
모두 확대 | 모두 축소

이 페이지에서

현상

다음 조건에 해당 하는 경우 Microsoft SQL Server 2008 R2 SP2 또는 Microsoft SQL Server 2012에서 쿼리를 실행 하면 잘못 된 결과가 나타날 수 있습니다.
  • 전체 조인 절의 결과 대해 CROSS APPLY 절에서는 쿼리를 사용 합니다.
  • 전체 조인 절에 테이블 반환 사용자 정의 함수를 호출 하 여 테이블 데이터를 제공 합니다.
  • 열 이름을 매개 변수로 허용 하 고 결과 테이블로 반환 합니다.
예를 들어, 다음과 유사한 쿼리를 실행 합니다.
SELECT * FROM tablename 
CROSS APPLY (
    SELECT * FROM
        (SELECT * FROM [dbo].[func_GetTableFromXml](xmlColumn) WHERE nodeParentName = 'New') s1 
    FULL JOIN 
        (SELECT * FROM [dbo].[func_GetTableFromXml](xmlColumn) WHERE nodeParentName = 'Old') s2 
    ON s1.nodeName = s2.nodeName
    ) s 
참고 이 문제는 Microsoft SQL Server 2012에서 발생 하지 않습니다.

해결 방법

누적 업데이트 정보

SQL Server 2012에 대 한 누적 업데이트 7

이 문제에 대 한 수정 프로그램은 먼저 누적 업데이트 7 릴리스 되었습니다. SQL Server 2012에 대 한이 누적 업데이트 패키지를 구하는 방법에 대 한 자세한 내용은 Microsoft 기술 자료의 다음 문서를 참조를 클릭 합니다.
2823247 SQL Server 2012에 대 한 누적 업데이트 패키지 7
참고 빌드 누적 되는 형태 이므로 각 새 수정 프로그램 릴리스의 모든 핫픽스와 들어 및 이전 SQL Server 2012로 포함 된 모든 보안 수정 프로그램 릴리스의 수정. 이 핫픽스가 포함 된 최신 수정 릴리스를 적용을 고려 하는 것이 좋습니다. 자세한 내용을 보시려면, Microsoft 기술 자료의 다음 문서 번호를 클릭해 주십시오.
2692828 SQL Server 2012에서 릴리스된 후에 릴리스된 SQL Server 2012를 빌드

SQL Server 2012 s p 1 용 누적 업데이트 3

이 문제에 대 한 수정 프로그램은 먼저 누적 업데이트 3 릴리스 되었습니다. SQL Server 2012 s p 1에 대 한이 누적 업데이트 패키지를 구하는 방법에 대 한 자세한 내용은 Microsoft 기술 자료의 다음 문서를 참조를 클릭 합니다.
2812412 SQL Server 2012 서비스 팩 1 용 누적 업데이트 패키지 3
참고 빌드 누적 되는 형태 이므로 각 새 수정 프로그램 릴리스의 모든 핫픽스와 들어 및 이전 SQL Server 2012 sp1에 포함 된 모든 보안 수정 프로그램 릴리스의 수정. 이 핫픽스가 포함 된 최신 수정 릴리스를 적용을 고려 하는 것이 좋습니다. 자세한 내용을 보시려면, Microsoft 기술 자료의 다음 문서 번호를 클릭해 주십시오.
2772858 SQL Server 2012 서비스 팩 1 릴리스된 후에 릴리스된 SQL Server 2012를 빌드

SQL Server 2008 R2 s p 2 용 누적 업데이트 5

이 문제에 대 한 수정 프로그램은 먼저 누적 업데이트 5에에서 릴리스 되었습니다. SQL Server 2008 R2 s P 2에 대 한이 누적 업데이트 패키지를 구하는 방법에 대 한 자세한 내용은 Microsoft 기술 자료의 다음 문서를 참조를 클릭 합니다.
2797460 SQL Server 2008 R2 서비스 팩 2 용 누적 업데이트 패키지 5
참고 빌드 누적 되는 형태 이므로 각 새 수정 프로그램 릴리스의 모든 핫픽스와 들어 및 릴리스는 이전 SQL Server 2008 R2 s P 2에 포함 된 모든 보안 수정 프로그램을 수정 합니다. 이 핫픽스가 포함 된 최신 수정 릴리스를 적용을 고려 하는 것이 좋습니다. 자세한 내용을 보시려면, Microsoft 기술 자료의 다음 문서 번호를 클릭해 주십시오.
2730301 SQL Server 2008 r 2를 SQL Server 2008 R2 서비스 팩 2가 릴리스된 후에 릴리스된 빌드

현재 상태

Microsoft는 "적용 대상" 절에 나열된 제품에서 문제가 있음을 확인했습니다.

해결 과정

이 문제를 해결 하려면 전체 조인 절 대신 전체 병합 조인 절을 사용 합니다.

예를 들어, 쿼리는 다음과 같은 것에 "현상" 절에서 설명 하는 쿼리를 변경 합니다.
SELECT * FROM tablename 
CROSS APPLY (
    SELECT * FROM
        (SELECT * FROM [dbo].[func_GetTableFromXml](xmlColumn) WHERE nodeParentName = 'New') s1 
    FULL MERGE JOIN 
        (SELECT * FROM [dbo].[func_GetTableFromXml](xmlColumn) WHERE nodeParentName = 'Old') s2 
    ON s1.nodeName = s2.nodeName
    ) s

추가 정보

CROSS APPLY 절을 사용 하는 방법에 대 한 자세한 내용은 다음 Microsoft TechNet 웹 사이트를 이동 하십시오.
CROSS APPLY 절을 사용 하는 방법에 대 한 일반 정보

속성

기술 자료: 2800797 - 마지막 검토: 2013년 4월 15일 월요일 - 수정: 3.0
본 문서의 정보는 다음의 제품에 적용됩니다.
  • Microsoft SQL Server 2008 R2 Service Pack 2
  • Microsoft SQL Server 2008 R2 Datacenter
  • Microsoft SQL Server 2008 R2 Enterprise
  • Microsoft SQL Server 2008 R2 Developer
  • Microsoft SQL Server 2008 R2 Standard
  • Microsoft SQL Server 2008 R2 Web
  • Microsoft SQL Server 2008 R2 Workgroup
  • Microsoft SQL Server 2008 R2 Express
  • Microsoft SQL Server 2012 Developer
  • Microsoft SQL Server 2012 Enterprise
  • Microsoft SQL Server 2012 Express
  • Microsoft SQL Server 2012 Standard
  • Microsoft SQL Server 2012 Web
  • SQL Server 2012 Enterprise Core
키워드:?
kbqfe kbfix kbsurveynew kbexpertiseadvanced kbmt KB2800797 KbMtko
기계 번역된 문서
중요: 본 문서는 전문 번역가가 번역한 것이 아니라 Microsoft 기계 번역 소프트웨어로 번역한 것입니다. Microsoft는 번역가가 번역한 문서 및 기계 번역된 문서를 모두 제공하므로 Microsoft 기술 자료에 있는 모든 문서를 한글로 접할 수 있습니다. 그러나 기계 번역 문서가 항상 완벽한 것은 아닙니다. 따라서 기계 번역 문서에는 마치 외국인이 한국어로 말할 때 실수를 하는 것처럼 어휘, 구문 또는 문법에 오류가 있을 수 있습니다. Microsoft는 내용상의 오역 또는 Microsoft 고객이 이러한 오역을 사용함으로써 발생하는 부 정확성, 오류 또는 손해에 대해 책임을 지지 않습니다. Microsoft는 이러한 문제를 해결하기 위해 기계 번역 소프트웨어를 자주 업데이트하고 있습니다.
이 문서의 영문 버전 보기:2800797

피드백 보내기

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com