database.sarang.net
UserID
Passwd
Database
DBMS
ㆍMySQL
PostgreSQL
Firebird
Oracle
Informix
Sybase
MS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
MySQL Q&A 29380 게시물 읽기
No. 29380
테이블간 필드값 복사 한방쿼리로 가능할까요?
작성자
BigBug(willwiz)
작성일
2009-10-29 15:35
조회수
6,149

insert into 사용해서요... BA로 필드값을 복사해 넣으려 합니다.


A테이블과 B테이블 두개가 있습니다.


A테이블은 idB테이블은 idx로 다른 테이블과 연동 되지요... 


그 외 구조는 동일합니다.


A는아이디 발급받은 회원의 정보이구요. B는 아이디 발급받기 전 회원의 정보입니다.


그래서 아이디 발급받은 후에 해당 idx값을 가지고 있는 B테이블의 필드값을 A테이블에 할당된 id값으로 바꿔 복사하려고 합니다.


한방 쿼리로 가능한 방법 없을까요?

이 글에 대한 댓글이 총 1건 있습니다.

안녕하세요 박성원입니다. 



질문하신 부분에 조금 이상한 부분이 있어서 확인을 해볼까합니다. 


먼저 B테이블에서 id값을 제외한 일부 데이터가 A테이블로 이동된다고 하셨는데 

이 id값을 다시 B에 입력한다는건 그다지 효율적으로 보이지 않습니다. 


처음부터 B테이블에 index형태의 id값을 넣어 주는 방법이 있으나 이는 기존 데이터의 양에 따라서 
매우 비 효율적으로 동작하게 됩니다. 

차라리 log 테이블을(지금의 A테이블이군요!!) 이용해서 사용하는게 대부분의 작업 방식입니다. 


또한 말씀하셨던 부분중에 두 테이블의 구조는 동일할 필요가 없습니다. 

A 테이블은 단순히 변경된 id의 값을 저장하는 log Table이므로(혹은 그 반대의 경우도 문제가 없습니다.)
변경값과 변경전 값만을 가지면 될듯합니다. 


마지막으로
한방 쿼리는 필요 없으시겠지만 일반적으로 update 쿼리도 join이 가능하니 join형태로 update문을
작성하시면 됩니다.

박성원(darkancia)님이 2009-10-30 11:46에 작성한 댓글입니다.
[Top]
No.
제목
작성자
작성일
조회
29383소스에러좀 찾아주세요... [1]
이희현
2009-10-30
9221
29382MySQL영역에서 DB Monitoring Solution이 필요한가요? [1]
EPG
2009-10-30
5690
29381인덱스 문제좀 봐주세요. [1]
VV
2009-10-29
5720
29380테이블간 필드값 복사 한방쿼리로 가능할까요? [1]
BigBug
2009-10-29
6149
29379날자를 기억할때 [1]
VV
2009-10-29
5503
29378속도가 느립니다. 인덱스를 어떤방법으로 설정해야 하는지?
임기섭
2009-10-27
5837
29377ER-모델링... 스키마..
까수니
2009-10-26
5966
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.017초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다