데이터베이스 개발자 질문과 답변 게시판

데이터베이스 개발/운영 관련 질문과 답변을 올리는 게시판입니다. 궁금하신 내용을 이곳에서 문의하시면 SQLER 분들의 답변을 받으실 수 있습니다. 문의를 하실때에는 최근 작업하신 특이 사항이나, 장애 발생 전 상황을 상세히 올려 주시면 답글을 적어주시는 SQLER분들의 답변이 더 정확할 수 있으니 도움 되시길 바랍니다. 쿼리 문의일 경우, 실제 문제가 재현되는 테이블생성, 샘플데이터 생성 쿼리를 함께 올려 주시면 더 빠르고 정확한 쿼리 문의 응답이 가능합니다.

프로시저에서 임시테이블을 만들어서 특정테이블의 컬럼을 update하려 합니다.
프로시저를 아래와 같이 작성했는데, update 쿼리가 실행되지 않아서 질문드립니다.
프로시저를 어떻게 작성해야 하는 건가요?
업데이트 쿼리 : update Prod_stock set Rstock001 = Rstock001 + sum(Qty) where itmcd = p_code
                     Str_code는 varchar(3)이고, 001,002,003..., Rstock001은 integer 형식입니다. 
                     P_code는 numeric, itmcd도 numeric입니다.
업데이트 관련 쿼리 : Select Str_code, P_code, Sum(Qty) From Ven_dt 
                            where S_date between @Bday AND @Aday  Group by Str_code, P_code

alter PROC usp_Ven_Dt   
AS     
Begin       
    Declare      
    @Dayvalue varchar(8), 
    @Aday varchar(8), 
    @Bday varchar(8), 
    @query NVARCHAR(MAX) 
 
    Select @Dayvalue = CONVERT(VARCHAR, GETDATE(), 112)        
    set @Aday = convert(varchar(8), dateadd(day, 1, @Dayvalue), 112)  --내일  
    set @Bday = convert(varchar(8), dateadd(day, -1, @Dayvalue), 112) --어제   

    SELECT ' UPDATE Prod_stock SET Rstock'+Str_code+' = Rstock'+Str_code+' + ' + CONVERT(NVARCHAR, SUM(Qty)) +   
           ' WHERE itmcd = ''' + P_code + '' AS query INTO #temp
    FROM Ven_Dt WHERE S_date BETWEEN @Bday AND @Aday 
    GROUP BY Str_code, P_code    

    WHILE EXISTS(SELECT 1 FROM #temp)    
    BEGIN    
      SELECT TOP 1 @query = query FROM #temp
      EXEC (@query)   
      DELETE FROM #temp WHERE query = @query  
    END    
    DROP TABLE #temp    

    Delete From Ven_Dt where S_date between @Bday and @Aday    
No. Subject Author Date Views
10514 MSSQL과 ORACLE의 인덱스 크기 [2] HoyaSoft 2019.11.05 965
10513 procedure에서 row lock을 걸려면 어떻게 써줘야하나요? [1] dlrj123 2019.10.30 1018
10512 다국어지원 select 시 N 의사용 [2] pungki21 2019.10.29 1168
10511 left join 쿼리문의 [2] 열린문서 2019.10.25 1275
10510 SQL Managed Instance SQL server2017에 마이그레이션 천정오 2019.10.24 749
» 프로시저에서 임시테이블을 만들어서 특정테이블의 컬럼을 update하려 합니다. hsp-user 2019.10.18 1180
10508 SQLSERVER 2008 R2 OS 교체 뿌앙뿌앙뿌뿌앙 2019.10.17 941
10507 인덱스 질문 [3] 하이브 2019.10.09 1178
10506 미포함 년도 구할려고 합니다. [1] 아잉옹 2019.10.08 934
10505 트리 구조를 pivot 하고 싶은데 조언좀 해주세요 [1] 노잼호 2019.10.07 1340
10504 sum 합산관련 질문...금손님들 도움이 필요합니다 [1] 동태찜 2019.10.05 896
10503 구간별 최고,최저 쿼리 질문입니다. [1] 생각찾기 2019.10.04 1024
10502 [MYSQL] 결제 실패한 고객의 월별 재구매율 구하기 [2] 알프 2019.10.02 1150
10501 SQL Server 2008 R2 접속시 로그인 시간 제한이 만료 오류 관련 문의 드립니다. [1] 훈미남 2019.09.27 1150
10500 data 삭제시 속도 향샹될까요 [2] 포스김 2019.09.27 940
10499 MSSQL Collation에러 [1] 일인일닭 2019.09.26 1122
10498 2008 에서 2017 업그레이드 시 손들어금내놔 2019.09.24 801
10497 다른 방법이없을까용 [1] 나는야 2019.09.16 1183
10496 선분조건을 점 조건으로 변환하는 방법 문의 [4] james_12 2019.09.09 1158
10495 partition pruning이 일어나지 않는 이유가 궁금하네요. james_12 2019.09.09 765





XE Login