안녕하세요


프로시저


변수: @strSN 이며 12,23,35   등의 여러개 값이 들어갈 예정



declare @strSN  varchar(max)

declare @strQuery varchar(max)



Set @strQuery =  select attribute, option from table1 a 

inner join table2 b  

on a.sn= b.sn  

where a.sn in ('+@strSN+')


exec (@strquery)



sn컬럼이 클러스터 인덱스에 있는 테이블입니다.


기존 한개씩 실행하는 sp의경우

 변수를 1개씩 받아는 클러스터인덱스를 타지만 느리다고합니다 . (아주 대용량 사이트긴 합니다)

그래서 다음 쿼리를 사용하려고하는데

이 쿼리는 훨씬 빠르다고 합니다. 4000개의 변수일 경우 거의 10배정도;;


그런데 보안상 불안해서 executesql 을 사용하려해도 방법이없고

혹시 추천할만한 다른 방법이 있을까요??

ㅜㅜ 머리가 터지겠네용 ㅜㅜ