안녕하세요.
문의 드리고자 합니다.
우선 프로시져로 하려고 합니다.
A 테이블에 RawData 가 들어 잇습니다. 1200건 정도의 데이터가 있습니다(항상 고정은 아님)
@strRate 변수에 값을 할당받습니다.
전체 인원수에서 5% 또는 10% %이용하여 A 테이블에 대상을 추출하고자 합니다
vharchar 타입으로 @Rate 변수를 하나 받습니다.
전체 인원 모수를 구합니다.
declare @nCnt int;
select @nCnt = count(*) / @Rate from A
@nCnt 값을 항당 받습니다.
할당 받은 값을
동적쿼리에 넣어 주는데 오류가 발생됩니다.
Declare @qey varchar(2000)
@qry = 'select top ' + @nCnt +' 컬럼......' +
' from a order by newid()'
Exex(@qry)
이렇게 하면
Select top '을 데이터 형식 int로 변환하지 못했습니다..
라는 sql오류가 발생 합니다.
Top에서 변수를 활용하여 값을 받아올수 있는 방법은 없는가요?
+ convert(varchar,@nCnt) +
--
Declare @qry varchar(2000) , @nCnt int , @Rate decimal(12,2);
set @Rate = 10
select @nCnt = count(*) / @Rate from A
select top (@nCnt ) * from A order by newid()