반응형

DB 6

postgreSQL UPDATE, DELETE 조인 사용법

1. UPDATE 문과 조인UPDATE emp SET salary = dept.avg_salary FROM dept WHERE emp.dept_id = dept.dept_id;emp 테이블의 salary 값을 dept 테이블의 avg_salary 값으로 업데이트합니다.두 테이블은 dept_id를 기준으로 조인합니다.2. DELETE 문과 조인DELETE FROM emp USING dept WHERE emp.dept_id = dept.dept_id AND dept.status = 'closed';dept 테이블에서 status가 'closed'인 부서에 속한 직원을 emp 테이블에서 삭제합니다.두 테이블은 dept_id를 기준으로 조인합니다. 주의사항조인 조건을 정확히 설정UPDATE와..

DB/postgreSQL 2025.04.01

postgreSQL merge문 사용하기

1. MERGE 문이란?MERGE 문은 데이터베이스에서 데이터를 삽입(INSERT), 업데이트(UPDATE), 삭제(DELETE)를 한 번의 SQL 문으로 수행할 수 있도록 해주는 기능입니다. 기존의 INSERT ON CONFLICT나 UPSERT 방식보다 더 세밀한 제어가 가능합니다.PostgreSQL은 15버전부터 MERGE 문을 공식적으로 지원하기 시작했습니다.2. MERGE 문 기본 구조TYPE1 -- 기본 MERGEMERGE INTO 대상_테이블 AS aUSING 소스_테이블 AS b ON (a.기준_컬럼 = b.기준_컬럼) WHEN MATCHED THEN UPDATE SET a.컬럼1 = b.컬럼1WHEN NOT MATCHED THEN INSERT (컬럼1, 컬럼2) VALUES (..

DB/postgreSQL 2025.03.28

postgreSQL 임시테이블 생성

PostgreSQL에서 임시 테이블(Temporary Table)은 세션(Session) 또는 트랜잭션(Transaction) 동안만 유지되는 테이블로, 일정 시간이 지나면 자동으로 삭제됩니다. 임시 데이터를 저장하거나, 복잡한 쿼리에서 중간 결과를 저장할 때 유용하게 사용할 수 있습니다.1. 임시 테이블 생성하기임시 테이블을 생성하는 기본적인 방법은 다음과 같습니다.CREATE TEMP TABLE temp_users ( id SERIAL PRIMARY KEY, name TEXT NOT NULL, phone INT NULL, email VARCHAR UNIQUE NOT NULL);-- ON COMMIT DROP; -- 트랜잭션 COMMIT될 때 해당 임시 테이블 삭제-- ON..

DB/postgreSQL 2025.03.28
반응형