좋은 하루.얻기 액세스
-- Pivot the table so we get the UW as columns rather than rows
DECLARE @SQL NVARCHAR(MAX)
SET @SQL = '
SELECT *
FROM #PreProcessed
PIVOT (SUM(Quotes)
FOR [UW] IN (' + @UWColumns + ')
) AS bob'
이 코드를 실행하여 동적 SQL을 실행합니다.
EXEC sp_executesql @SQL,
N'@UWColumns nvarchar(MAX)',
@UWColumns
제 질문은 결과 테이블을 어떻게 저장합니까? 특히 컬럼이 몇 개 있는지, 심지어 컬럼이 호출 될지 모를 때?
나는 아래의 코드를 시도하지만CREATE TABLE AS
구문에 반대 모두
아마도 실제 테이블을 만들어야 할 것입니다. 'sp_exectutesql'의 외부에서 생성 된 임시 테이블은 in 안에 범위를 가질 것입니다. 그러나 그 안에 생성 된 임시 테이블 (변수 테이블 등)은 범위가 호출 코드로 반환 될 때 할당을 해제합니다. 동적 SQL은 동적 SQL뿐만 아니라 테이블을 생성하여이를 생성합니다. 또는 원본 (정규화 된) 데이터로 작업하도록 코드를 다시 팩터링하십시오. – MatBailie