- [비교] UPDATE
- 日常茶飯事
- 2009. 4. 28. 23:10
CREATE TABLE TB_1 ( pk int PRIMARY KEY , col varchar(10) ); CREATE TABLE TB_2 ( pk int PRIMARY KEY , col varchar(10) ); INSERT INTO TB_1 VALUES (1, '111'); INSERT INTO TB_1 VALUES (2, '222'); INSERT INTO TB_1 VALUES (3, '333'); INSERT INTO TB_2 VALUES (1, 'aaa'); INSERT INTO TB_2 VALUES (2, 'bbb'); --SQL Server UPDATE TB_1 SET col = b.col FROM tb_1 a, tb_2 b WHERE a.pk = b.pk; --Oracle UPDATE TB_1 a SET a.col = ( SELECT col FROM TB_2 b WHERE a.pk = b.pk ) WHERE EXISTS ( --이 조건절이 없으면 3 이 null 로 갱신된다. SELECT 1 FROM TB_2 b WHERE a.pk = b.pk ) --Oracle 다른 방법 UPDATE ( SELECT a.col a_col, b.col b_col FROM TB_1 a, TB_2 b WHERE a.pk = b.pk ) SET a_col = b_col
- MariaDB
UPDATE CARD c INNER JOIN TMP_CARD t ON c.card_no = t.card_no SET c.act_no = t.act_no WHERE c.act_no IS NULL ;
Recent comment