특정 테이블의 컬럼을 다른 테이블의 컬럼으로 update 0 1 1,010

by 줆이 [Oracle 기초] [2017.07.04 14:30:35]


안녕하세요 항상 답변 감사드립니다...

 

질문이 있는데,,,,

 

A테이블의 c 칼럼의 (예를 들어 사원별) max 값을 뽑아서..

B테이블의 a 칼럼에 update를 하고싶은데요...

 

UPDATE B
SET a = (                           SELECT MAX(c)
                                        FROM A
                                        WHERE A.XXXX= B.XXXX
                                        AND  A.YYYY= B.YYYY
                                        AND A.CCCC = B.CCCC
                                        GROUP BY CCCC);

 

 

이런식으로 하니까 A,B 구별을 못하던데...

어떻게 수정해야할까요...?

답변부탁드리겠습니다...

 

 

감사합니다.

 

by 마농 [2017.07.04 15:11:06]

1. 위와 같이 하셨다면 잘 될 듯 합니다.
  - 잘 안된다면 실제 쿼리가 위와 같지 않을 듯 하네요?
  - 테이블에 대한 알리아스 a, b 를 정확하게 지정했는지 확인하세요.
2. 추가사항으로 - Group By 는 불필요해 보입니다.
3. 추가사항으로 - 조건절이 없는데?
  - b 테이블 전체 갱신 맞나요?
  - 일부만 갱신하는 거라면 갱신 대상 조건을 주셔야 합니다.

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