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

db20

[MSSQL] ROLLUP 사용법 (소계, 합계) SQL Server에서 그룹 함수로 집계된 데이터에서 소계, 합계를 쉽게 구하기 위해서는 ROLLUP를 사용하면 된다. 아래의 예제를 참고하면 쉽게 이해할 수 있다. ROLLUP은 2가지 사용방법이 있다. 어느 것을 사용하든 결과는 동일하다. 방법1 : GROUP BY ROLLUP(그룹컬럼) 방법2 : GROUP BY 그룹컬럼 WITH ROLLUP | 방법1 : GROUP BY ROLLUP(그룹컬럼) SELECT job , deptno , SUM(sal) AS total_sal FROM emp WHERE job IN ('MANAGER', 'CLERK', 'SALESMAN') GROUP BY ROLLUP(job, deptno) 그룹 컬럼으로 지정된 모든 컬럼에 대하여 소계와 합계를 집계한다. | 방법2 :.. 2022. 4. 19.
[MSSQL] 조인 방법 쉽게 정리 (INNER JOIN, OUTER JOIN) SQL Server에서는 조인을 할 때에는 안시 조인(ANSI JOIN) 사용을 권장한다. 아래에는 조인(INNER JOIN), 아우터 조인(LEFT OUTER JOIN, RIGHT OUTER JOIN), 크로스 조인(CORSS JOIN) 사용법을 정리하였다. INNER JOIN과 LEFT OUTER JOIN은 꼭 사용법을 숙지해야 하며, 나머지 부분은 개념만 이해하고 넘어가면 된다. 조인 (INNER JOIN) : 기준 테이블과 조인 테이블 모두 데이터가 존재해야 조회됨 아우터 조인 (OUTER JOIN) : 기준 테이블에만 데이터가 존재하면 조회됨 | 조인 (INNER JOIN) SELECT a.empno , a.ename , a.job , a.mgr , a.deptno , b.dname FROM e.. 2022. 4. 19.
[MSSQL] IIF 함수 사용법 (CASE, DECODE) SQL Server 2012 버전부터 IIF 함수가 추가되었다. CASE 문을 사용하면 쿼리문이 조금 복잡해지는 부분이 있는데 2가지의 값만 리턴이 필요하다면 IIF 함수가 조금 더 효율적일 수 있다. 오라클의 DECODE 함수처럼 조금 함축적으로 쿼리문을 작성할 수 있지만 MSSQL에 종속된 함수이다. IIF 함수는 참과 거짓 두 경우의 값만 리턴이 가능하다. DECLARE @score INT = 80 SELECT IIF(@score >= 70, '합격', '불합격') AS score 더 많은 조건식을 사용하기 위해서는 CASE 문을 사용해야 한다. IS NULL 등 다양한 조건식이 사용가능 하다. DECLARE @score INT = NULL SELECT IIF(@score IS NULL, '미입력'.. 2022. 4. 15.
[MSSQL] ISNULL 함수 사용법 (NVL, NVL2, IFNULL) SQL Server에서는 NULL 값을 치환하기 위해서는 ISNULL 함수를 사용한다. 오라클에서 NVL 함수와 MySQL의 IFNULL 함수와 동일한 기능을 수행한다. 오라클의 NVL2와 동일한 함수는 없지만, IIF 함수 또는 CASE 문을 활용하여 비슷한 기능을 수행할 수 있으니 아래의 예제를 참고하면 도움이 될 수 있다. | 숫자 NULL 치환 WITH emp AS ( SELECT 'JONES' AS ename, 3000 AS salary, NULL AS retire UNION ALL SELECT 'SCOTT' AS ename, NULl AS salary, 'Y' AS retire ) SELECT ename , salary , ISNULL(salary, 0) AS sal FROM emp 급여(sa.. 2022. 4. 12.