728x90

Update 2

mysql update 할 때 값 여러개 동시에 하기 & join 조건 걸기 & concat & not like

테이블 2개를 join 한다음에 조건걸고 각 테이블의 컬럼값을 동시에 update 하게 되었다. 원하던 결과 1. 테이블조인을해서 조건을 건다. (join) 2. 1의 결과에 각 테이블의 컬럼 값을 기존문자열 + 새로운 문자열로 바꿔준다. (concat) 3. empseq는 0으로 시작하지 않아야 한다. (not like) 조건 update는 처음이라 이리저리 찾아보고 시행해본결과 다음과 같이 실행했을때 원하는 결과를 얻게되었다. UPDATE A_table a JOIN B_table b ON a.empname = b.empname #테이블 join SET a.empseq = CONCAT('00000', a.empseq), #테이블 alias.바꿀컬럼명 b.empseq = CONCAT('00000', b...

on duplicate key 를 써서 없으면 insert 있으면 update 하기

on duplicate key 를 써서 없으면 insert 있으면 update 하기 코딩을 하다보니 DB에 있으면 update 없으면 insert를 해야 할일이 생겼다. on duplicate key 를 모를때는 select count() .... 해와서 0이 아닐때 작업을 했는데, 이 방법을 알고 나니 신세계였다. insert 문 + on duplicate key + update문 으로 보면된다. DAO에서 넘겨줄때나 xml 파일에서 넘길때 insert도 되고 update 도 되서 뭐로할지 고민했는데, update 하니까 잘된다. /* --------- */ insert into ---------( AA,BB,CC) values(#{param1},#{param2},#{param3}) on duplica..

728x90