티스토리 뷰





반응형

select로 insert 하기

1. insert into 삽입될 테이블(컬럼 나열1, 컬럼 나열2 ...)

select (컬럼 나열1, 컬럼 나열2 ...) from 참고할 테이블 where 조건(조건은 없어도 됨)

 

위와 같이 select문으로 검색된 데이터를 첫 번째 줄에 있는 테이블에 해당 컬럼으로 넣는다.

그리고 insert into방식에서 삽입될 테이블은 반드시 미리 생성하고 사용해야 한다.

INSERT INTO BACKUPROWDATA(EMPNO, NAME, MENUNO, MENUNAME, ORDERDATE, BACKUPDATE)
SELECT B.EMPNO, B.NAME, C.MENUNO, C.MENUNAME, A.ORDERDATE, GETDATE() AS BACKUPDATE
FROM [Order] A INNER JOIN Customer B
ON A.EMPNO = B.EMPNO INNER JOIN OrderSheet C
ON A.MENUNO = C.MENUNO;

 

2. select (컬럼 나열1, 컬럼 나열2 ...) into 삽입될 테이블 from 참고할 테이블 where 조건(조건은 없어도 됨)

 

1번 방식과 똑같지만 다른점은 여기선 삽입될 테이블을 생성하면서 넣어준다. 즉 미리 만들지 않아도 됨!

SELECT B.EMPNO, B.NAME, C.MENUNO, C.MENUNAME, A.ORDERDATE, GETDATE() AS BACKUPDATE INTO BACKUPROWDATA
FROM [Order] A INNER JOIN Customer B
ON A.EMPNO = B.EMPNO INNER JOIN OrderSheet C
ON A.MENUNO = C.MENUNO;

select로 update 하기

update A | B

set 변경하는 컬럼 = 값

From A join B

...

UPDATE A
SET A.ISMEMBERSHIP = 'Y'
FROM Customer A INNER JOIN (
   SELECT EMPNO
   FROM [ORDER]
   GROUP BY EMPNO
) B
ON A.EMPNO = B.EMPNO;

insert와 유사하게 바꿔줄 조건을 지정해서 한번에 수정하는 역할이다.

select로 delete하기

Delete A | B

from A join B

...

DELETE A 
FROM OrderSheet A LEFT OUTER JOIN (
   SELECT MENUNO
   FROM [ORDER]
   GROUP BY MENUNO
) B
ON A.MENUNO = B.MENUNO
WHERE B.MENUNO IS NULL;

 

반응형
댓글
반응형
최근에 달린 댓글
글 보관함
Total
Today
Yesterday
최근에 올라온 글
«   2024/04   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30