업데이트 구문 한방에 가능할까요?? 0 2 725

by 쿼리초보 [2020.10.19 16:27:50]


쿼리 한방 업데이트 가능한가요?

TABLE_A
A_KEY   --PK
COUNT 

TABLE_B
A_KEY         --PK (A테이블KEY값) 
DETAIL_NO  --PK

테이블이 위와같은 구조입니다.

A테이블의 COUNT만큼 B테이블의 ROW가 생성됩니다

테이블B를 카운트 내서.... 테이블 A에의 COUNT에 업데이트 해주고싶은데

SELECT A_KEY , COUNT(*) AS CNT FROM  TABLE_B GROUP BY A_KEY

그룹바이 하면 KEY 별 CNT가 나오는데...

A테이블에... COUNT를 업데이트 할 방법이 있나요?

업데이트할때 이너 조인은 걸수있는거같은데..

그룹바이 해서 걸수도있나요??

디비는 마리아 입니다.. 

조언 부탁드립니다. 

 

 

by 샤랄라 [2020.10.19 17:38:05]
# 방법1
update TABLE_A a inner join
            (select A_KEY, count(*) as CNT
             from TABLE_B
             group by A_KEY
            ) b
on (a.A_KEY = b.A_KEY )		 
set a.COUNT = b.CNT
where 1=1
;

# 방법2
update TABLE_A a
set COUNT = (select count(*)
                        from TABLE_B b
                        where b.A_KEY = a.A_KEY
                        group by b.A_KEY
                       ) 
where 1=1
and exists (select 1
                  from TABLE_B b
                  where b.A_KEY = a.A_KEY
                 )
; 

 


by 쿼리초보 [2020.10.20 09:26:53]

감사합니다. ㅠㅠ 

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입