첨부 실행 코드는 나눔고딕코딩 폰트를 사용합니다.
728x90
반응형
728x170

■ INSERT ON CONFLICT 명령을 사용해 데이터를 추가 또는 수정하는 방법을 보여준다.

 

▶ 예제 코드 (SQL)

DROP TABLE IF EXISTS TEST_CUSTOMER;

CREATE TABLE TEST_CUSTOMER
(
    CUSTOMER_ID SERIAL PRIMARY KEY
   ,NAME        VARCHAR UNIQUE
   ,EMAIL       VARCHAR NOT NULL
   ,ACTIVE      BOOL NOT NULL DEFAULT TRUE
);

INSERT INTO TEST_CUSTOMER (NAME, EMAIL) VALUES
    ('IBM'      , 'contact@ibm.com'      ),
    ('Microsoft', 'contact@microsoft.com'),
    ('Intel'    , 'contact@intel.com'    );

INSERT INTO TEST_CUSTOMER (NAME, EMAIL) VALUES ('Microsoft', 'hotline@microsoft.com')
ON CONFLICT (NAME)
DO UPDATE SET EMAIL = EXCLUDED.EMAIL || ';' || TEST_CUSTOMER.EMAIL;

SELECT * FROM PUBLIC.TEST_CUSTOMER;
728x90
반응형
그리드형(광고전용)
Posted by icodebroker

댓글을 달아 주세요