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

데이터베이스 개발/운영 관련 질문과 답변을 올리는 게시판입니다. 궁금하신 내용을 이곳에서 문의하시면 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
10522 쿼리 질문. 도와주세요 [1] 릴리_300837 2019.11.28 961
10521 SQL 관련 에러메세지 시원한라면 2019.11.23 761
10520 DeadLock_Timeout 관련 문의 [1] 황무지 2019.11.21 810
10519 MS SQL 시스템 데이터 베이스 [1] 백업엔지니어 2019.11.15 873
10518 외부에서의 sql접속을 막고 싶은데요 [1] 카루카루 2019.11.14 971
10517 MSSQL 2008 -> ORACLE 12c Linkedserver 문의 [1] 멋진벼리 2019.11.11 1021
10516 같은 분류별 number 부여 [1] 깨비꼬비 2019.11.08 848
10515 쿼리문의 - 유저 출,입 기록 [1] adsd1234 2019.11.07 945
10514 MSSQL과 ORACLE의 인덱스 크기 [2] HoyaSoft 2019.11.05 916
10513 procedure에서 row lock을 걸려면 어떻게 써줘야하나요? [1] dlrj123 2019.10.30 971
10512 다국어지원 select 시 N 의사용 [2] pungki21 2019.10.29 1076
10511 left join 쿼리문의 [2] 열린문서 2019.10.25 1256
10510 SQL Managed Instance SQL server2017에 마이그레이션 천정오 2019.10.24 737
» 프로시저에서 임시테이블을 만들어서 특정테이블의 컬럼을 update하려 합니다. hsp-user 2019.10.18 1155
10508 SQLSERVER 2008 R2 OS 교체 뿌앙뿌앙뿌뿌앙 2019.10.17 925
10507 인덱스 질문 [3] 하이브 2019.10.09 1159
10506 미포함 년도 구할려고 합니다. [1] 아잉옹 2019.10.08 915
10505 트리 구조를 pivot 하고 싶은데 조언좀 해주세요 [1] 노잼호 2019.10.07 1258
10504 sum 합산관련 질문...금손님들 도움이 필요합니다 [1] 동태찜 2019.10.05 868
10503 구간별 최고,최저 쿼리 질문입니다. [1] 생각찾기 2019.10.04 981





XE Login