파라미터로 sql문을 넘겨서 (Program에서 sql문을 만들어 sp를 호출해서 아래와 같이 했을경우 구문상 오류는 없는듯한데.
제가 너무 개념없이 프로그램밍 한걸까요?
오류가 나는데..
^^
고수님..아래와 같이 Temp Table을 쓰면 안되는 건가요? Exec로 Temp1, Temp2, TEmp3 에 값을 넣고 select 하면 안될까요?
한수 가르쳐 주세요..
이게 된다면 저는 속도 면에서 굉장한 효과를 볼수 있거든요~
^^
부탁드립니다.
CREATE TABLE SP_Srch201 (
@pSQL_1 VARCHAR(255),
@pSQL_2 VARCHAR(255),
@pSQL_3 VARCHAR(255)
AS BEGIN
IF EXISTS (SELECT * FROM TEMPDB.DBO.SYSOBJECTS WHERE ID = OBJECT_ID(N'[TEMPDB].[DBO].[#TEMP_WORK]')) DROP TABLE [DBO].[#TEMP_WORK]
IF EXISTS (SELECT * FROM TEMPDB.DBO.SYSOBJECTS WHERE ID = OBJECT_ID(N'[TEMPDB].[DBO].[#TEMP_IN]' )) DROP TABLE [DBO].[#TEMP_IN]
IF EXISTS (SELECT * FROM TEMPDB.DBO.SYSOBJECTS WHERE ID = OBJECT_ID(N'[TEMPDB].[DBO].[#TEMP_OUT]')) DROP TABLE [DBO].[#TEMP_OUT]
EXEC (@pSQL_1) --select a, b, c into @temp_work from aa ...........................
EXEC (@pSQL_2) -- select a1, a2, a3 into @temp_in from ipgof...............
EXEC (@pSQL_3) -- select b1, b2,b3 into @temp_out from salef.............
select *
from #temp_work a1
left join #temp_In on a=a1
left join #temp_out on a=b1
where 1=1
END
Comment 1
-
처리짱
2015.04.09 10:46
문법에 어긋나지 않고 속도면에서 굉장한 효과가 있는데 안쓸이유가 뭐가있나요 ㅎㅎ