본문 바로가기
  • [성공하는 개발자] - Developer

MSSQL35

[MSSQL] MERGE 문 사용법 (DUAL, UPDATE와 INSERT를 한번에) MERGE 문을 사용하면 변경할 테이블에 데이터가 존재하는지 체크하고, UPDATE, DELETE, INSERT를 한 번에 작업이 가능하다. MERGE 문을 사용하지 않을 경우 해당 조건으로 테이블을 SELECT 한 후 IF 조건을 사용하여 UPDATE나 INSERT로 분기하는 로직을 작성해야 하는 번거로움이 있다. MERGE 문의 경우 단일(한개의) 테이블에 UPDATE 또는 INSERT를 하는 경우 많이 사용하지만, 두개의 테이블을 비교하거나 서브 쿼리의 결과에 따라서 UPDATE, INSERT 작업이 가능하다. ■ 단일 테이블 사용법 (DUAL) 오라클에서는 DUAL이라는 dummy 테이블을 USING 절에 사용하면 단일 테이블 작업이 간단하지만, MSSQL에서는 DUAL 테이블이 없기 때문에 du.. 2022. 11. 7.
[MSSQL] DELETE 문 사용법 3가지 (데이터 삭제) SQL Server에서 테이블의 데이터를 삭제하기 위해서는 DELETE 문을 사용하면 된다. SQL Server에서는 DELETE 문에서 조인을 하여 데이터를 삭제할 수 있으며, 서브쿼리를 사용하여 삭제할 데이터 범위를 조회하여 데이터를 삭제할 수도 있다. MERGE 문을 사용하면 INSERT, UPDATE, DELETE를 동시에 수행할 수 있다. ■ 기본적인 DELETE 방법 DELETE FROM dbo.dept WHERE deptno = 40 부서(dept) 테이블에서 부서코드(deptno) "40"에 해당하는 행을 삭제하는 예제이다. DELETE dbo.dept WHERE deptno = 40 DELETE 문에서는 FROM 키워드를 생략하고 DELETE 키워드 뒤에 테이블명을 기술해도 된다. ■ 다.. 2022. 11. 7.
[MSSQL] UPDATE 문 사용법 3가지 (데이터 수정) SQL Server에서 테이블이 데이터를 수정하기 위해서는 UPDATE 문을 사용하면 된다. SQL Server에서는 UPDATE 문에서 FROM 절을 사용할 수 있어서 다른 테이블과 조인을 하여 업데이트를 할 수 있다. 조인을 사용하지 않을 경우 서브쿼리를 사용하여 여러 개의 데이터를 업데이트하면 된다. SELECT 해서 UPDATE 하는 방법은 조인 또는 서브쿼리를 사용하면 된다. ■ 기본적인 UPDATE 방법 UPDATE dbo.dept SET dname = 'SALES TEAM' , loc = 'TEXAS' WHERE deptno = 30 부서명(dname)과 지역명(loc)을 업데이트하는 예제이다. 업데이트할 칼럼이 여러 개인 경우 SET 절에서 쉼표(,)로 구분하여 칼럼과 값을 기술하면 된다... 2022. 11. 4.
[MSSQL] INSERT 문 사용법 3가지 (데이터 입력) SQL Server에서 데이터를 입력하기 위해서는 INSERT 문을 사용한다. SQL Server 2008부터 여러 행을 입력할 수 있는 기능이 추가되었으며, SELECT 해서 INSERT 하는 방법으로도 여러 건의 데이터를 입력할 수 있다. INSERT와 UPDATE를 동시에 수행하기 위해서는 MERGE 문을 사용하거나 프로시저를 생성하여 사용하면 된다. ■ 기본적인 INSERT 방법 INSERT INTO dbo.dept (deptno, dname, loc) VALUES (50, 'IT TEAM', 'SEOUL') INSERT INTO [테이블명] ([칼럼1], [칼럼2], [칼럼3] ...) VALUES ([값1], [값2], [값3] ...) 입력할 칼럼의 개수와 값을 개수를 동일하게 입력하면 된다.. 2022. 11. 3.