쿼리 한방 업데이트 가능한가요?
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를 업데이트 할 방법이 있나요?
업데이트할때 이너 조인은 걸수있는거같은데..
그룹바이 해서 걸수도있나요??
디비는 마리아 입니다..
조언 부탁드립니다.
# 방법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 ) ;