데이터베이스 개발자 질문과 답변 게시판

데이터베이스 개발/운영 관련 질문과 답변을 올리는 게시판입니다. 궁금하신 내용을 이곳에서 문의하시면 SQLER 분들의 답변을 받으실 수 있습니다. 문의를 하실때에는 최근 작업하신 특이 사항이나, 장애 발생 전 상황을 상세히 올려 주시면 답글을 적어주시는 SQLER분들의 답변이 더 정확할 수 있으니 도움 되시길 바랍니다. 쿼리 문의일 경우, 실제 문제가 재현되는 테이블생성, 샘플데이터 생성 쿼리를 함께 올려 주시면 더 빠르고 정확한 쿼리 문의 응답이 가능합니다.


[데이터 복사를 할 때 원본이 되는] A 라는 사람과
[데이터 복사를 할 때 새로 만들어지는] B라는 사람이 있고.

<소유물 테이블>
<번호 테이블>

이 있습니다.  지금 제가 하려는 것은

<소유물 테이블>
<번호 테이블>

에 특정사람 A의 정보를 B라는 사람에게 모두 (10~20개) 덮어 씌우는 과정입니다..

B라는 사람은 이전에 값이 있기에 모두 DELETE 시킨 후에,


<첫번째 쿼리문>
INSERT INTO 소유물 테이블 (아이디컬럼, 컬럼2) 
SELECT 'B아이디', '컬럼2
FROM 소유물 테이블
WHERE 아이디 = 'A라는사람'

이렇게 B라는 사람의 정보를 A에 복사를 하였구요 (여기 까지는 모두 순조롭습니다.)


그 후에 번호를 복사시키는 과정에서

<두번째 쿼리문>
INSERT INTO 번호테이블 (아이디컬럼, 컬럼2, 컬럼3, @특정번호@) 
SELECT 'B아이디', A.컬럼2, A.컬럼3, B.@특정번호@
FROM 번호테이블 as A inner join 소유물테이블 as B on @특정번호@ = @특정번호@
WHERE A.컬럼 = '문자열'

이런식으로 하였습니다만

위의 쿼리문은 [왼본이 되는] A라는 사람의 [번호테이블] 안에 있는 컬럼의 Index 컬럼의 값이 추가되고 있습니다.

저는 [복사가 되는 대상] B라는 사람이 복사된 [번호테이블] 안에 있는 (1씩 추가가 된) Index 컬럼의 값으로 복사를 하고 싶습니다.


다시 정리해서 여쭈어 본다면

첫번째로 복사를 했던 [소유물 테이블]의 A라는 사람의 모든 정보들의 [Index 칼럼]이 PK 값으로 되어있어서, (고유번호)

복사가 진행된 [소유물 테이블] 의 B라는 사람의 [Index 컬럼]은 A와 똑같이 복사가 되지 않고,

아시다시피 마지막 [Index (PK) 값]의 +1로 한 번씩 계속 추가되어 저장이 되었습니다.


이때 <첫번째 쿼리문>으로 복사 된 B의 정보가 있는 <소유물 테이블>의 플러스가 된 [Index 칼럼(PK값)]의 값을

<두번째 쿼리문> 에서 복사를 진행할 때

B의 [플러스가 된 Index 값]을 B 사람의 <번호테이블> 안에 있는 @특정번호@ 컬럼에 하나씩 INSERT INTO를 하고 싶습니다.. 


즉 위의 과정을 제가 생각하는 잘못된 쿼리문으로는

<두번째 쿼리문을 인용하여 하고자하는 쿼리문 (잘못된 쿼리)>
INSERT INTO 번호테이블 (아이디컬럼, 컬럼2, 컬럼3, @특정번호@) 
SELECT 'B아이디', A.컬럼2, A.컬럼3, B.@특정번호@
FROM 번호테이블 as A inner join 소유물테이블 as B on @특정번호@ = (SELECT @특정번호@ FROM 번호테이블 WHERE 컬럼 
= Blah)
WHERE A.컬럼 = '문자열'

이런 식으로 지정을 하고 싶습니다.

도대체............ 어떻게 해야 되나요???....
1111.png



위는 제가 업데이트를 해본 것인데 (이너조인) 상위 하나의 값만 복사가 됩니다...


즉 이 사진처럼 총 4개의 테이블이 있고

1, 3 번째는 PK값입니다

증가된 3번째 테이블의 PK값을

4번째 테이블에 순차적으로 대입을 시키고 싶습니다.

4개 테이블의 모든 번호의 컬럼 이름은 모두 같습니다..

제발 도와주세요 능력자분들....

제발 부탁드립니다..

눈물 흘리고 있습니다..

살려주세요..
No. Subject Author Date Views
9757 주민번호를 암호화 할때는 컬럼을 varbinary 몇으로 잡으세요? [1] neiyan 2017.02.28 2264
9756 쿼리문에 select하지 않는 컬럼을 join하고 group by 하는 이유가 있나요? [1] 하하하하하 2017.02.27 1947
9755 ibm db 트리거나 프로시저 문의 할 수 있는 사이트 아시는 분 [1] 동운 2017.02.27 1485
9754 기간으로 입력된 것들을 일로 쪼개서... 합쳐서 통계를 뽑고자 합니다. [5] DOOLLY 2017.02.24 2053
9753 sql 고수님들 도움이 필요합니다.(bcp관련) [1] 크리에이터현 2017.02.23 2876
9752 OS 및 SA 패스워드 둘다 분실.. [2] 뛰어 2017.02.23 1927
9751 회사 DB 개인용 백업 질문입니다 [1] 영곤잉 2017.02.22 1987
9750 랜던 함수를 이용하여 정보 추출 하고자 합니다. [2] 호짱 2017.02.22 1867
9749 ##MS_Policy ~## 계정 pw변경 문의 샬랄라 2017.02.22 2674
9748 고수님들아..DB에 저장되어있는 암호화된 데이터를 복호화하는 방법 부탁드려요 [1] neiyan 2017.02.21 2312
9747 sql2005에서 2012로 마이그레이션 조언요청.. [1] 극좌파 2017.02.21 2447
9746 주민번호 뒷자리 업데이트 [4] 아톰 2017.02.21 2210
9745 쿼리 질문 드립니다. [4] 오늘밤은안돼요 2017.02.21 2224
9744 답이 보이지 않아 SQL 문의드립니다. ㅠ_ㅠ [2] 김민엽_279256 2017.02.21 2954
9743 쿼리문 문의드립니다. [2] 파워유저 2017.02.20 2093
9742 update문 대량 발생시 lock [2] 극좌파 2017.02.19 1782
» INSERT INTO, UPDATE 쿼리문 질문입니다.. [1] 무인도 2017.02.17 3380
9740 서브쿼리가 아닌 쿼리문 실행후 해당 결과값에 별도 쿼리 실행 가능여부 [1] 아무래도난 2017.02.17 1613
9739 거래처별 폼목건수 말고 품목갯수를 구하려고 하는데요.. [1] 딸기메로나 2017.02.17 3626
9738 ssms에 이런 플러그인이 있을까요? [1] 봉술의달인 2017.02.17 2384





XE Login