0
이 질문에 대한 답변을 얻었으며 이미 인터넷에서 몇 가지 해결책을 찾았습니다. 그러나 여전히 제대로 작동하지는 않습니다.동적 쿼리의 결과를 변수에 저장하십시오.
그래서 .. 나는 SELECT 쿼리를 만들고 변수에 결과를 저장해야합니다 (테이블 변수를 원하지 않습니다). 제 문제는 테이블 이름도 변수라는 것입니다.
DECLARE @numRecord INT;
DECLARE @maxMacNumber INT;
SET @maxMacNumber = 500;
DECLARE @mac INT;
SET @mac = 0;
DECLARE @res FLOAT;
DECLARE @ap INT;
SET @ap = 0;
DECLARE @apString VARCHAR(2);
DECLARE @numRecordString VARCHAR(20);
DECLARE @tablename VARCHAR(500);
DECLARE @sql NVARCHAR(500);
DECLARE @varDefinition NVARCHAR(200);
WHILE @mac <= @maxMacNumber
BEGIN
SET @numRecord = 6 + @mac * 390;
SET @ap = 0;
WHILE @ap < 2
BEGIN
SELECT @apString = CONVERT(VARCHAR,@ap);
SELECT @numRecordString = CONVERT(VARCHAR, @numRecord);
SELECT @rssiString = CONVERT(VARCHAR, @rssi);
SET @tablename = 'APDB.dbo.AP' + @apString;
SET @sql = 'SELECT RSSI FROM ' + @tablename + ' WHERE ID=' + @numRecordString;
SET @varDefinition = N'@res FLOAT OUTPUT';
EXEC sp_executesql @sql, @varDefinition, @res = @res OUTPUT;
PRINT @res;
-- HERE I WILL DO SOMETHING WITH @res
END;
END;
문제는 내가 PRINT @res
을 할 때