오라클 쿼리문에서 CASE 표현식을 사용할 때 조건절에 서브쿼리(Subquery)를 사용하여 조건을 부여할 수 있다. CASE WHEN 안에서 SELECT 문을 사용할 수 있으며, 조건절에서 서브쿼리를 사용할 때는 EXISTS 연산자, IN 연산자, 집계함수와 부등호 연산자를 주로 많이 사용한다. 목차 EXISTS 연산자와 서브쿼리 사용법 IN 연산자와 서브쿼리 사용법 집계함수와 서브쿼리 사용법 CASE WHEN~THEN 서브쿼리 사용법 EXISTS 연산자와 서브쿼리 사용법 SELECT a.empno , a.ename , a.deptno , a.mgr , CASE WHEN EXISTS(SELECT 1 FROM emp aa WHERE aa.empno = a.mgr AND aa.deptno = a.deptn..
윈도우11 설치 USB 부팅 디스크를 만들기 위해서는 MS 공식 사이트에서 부팅 디스크 생성 Tool을 다운로드하여 실행하면 쉽게 만들 수 있다. Windows 11 Pro, Windows 11 Home의 설치 파일을 따로 받을 필요는 없으며, 윈도우를 설치할 때 선택 메뉴가 나오니 설치 USB를 만들 때는 별도의 구분이 없다. 설치 USB를 만들기 위해서는 USB 용량이 8기가 이상이 필요하며, 처음 사용하는 USB라면 미리 포맷을 한 후 윈도우11 설치 USB를 만두는 것이 좋다. 목차 USB 디스크 준비 및 포맷 (용량 8G 이상) 윈도우11 설치 미디어 만들기 다운로드 윈도우11 설치 USB 만들기 USB 디스크 준비 및 포맷 윈도우11 설치 USB를 만들기 위해서는 USB 용량이 8기가 이상 필..
오라클 쿼리문에서 CASE WHEN 표현식의 조건을 여러개 부여하기 위해서는 WHEN~THEN을 반복해서 사용할 수 있으며, 다중 조건을 부여할 수 있다. 하나의 조건절(WHEN~THEN)에서 여러개 칼럼을 조건으로 부여하기 위해서는 AND, OR 연산자를 사용하면 된다. 목차 CASE WHEN 조건 여러개 부여 (다중 조건) CASE WHEN 여러개 칼럼 조건 부여 (다중 칼럼) CASE WHEN 조건 여러개 부여 (다중 조건) SELECT ename , job , CASE WHEN job = 'ANALYST' THEN 'CASE 1' WHEN job = 'MANAGER' THEN 'CASE 2' WHEN job = 'SALESMAN' THEN 'CASE 3' END AS case_result FROM..
오라클 쿼리에서 월별 합계(월별 통계)를 구하기 위해서는 날짜 칼럼을 TO_CHAR 함수를 사용하여 년월까지만 잘라서 집계를 하면 쉽게 구할 수 있다. 월별 가로 합계를 구하기 위해서는 DECODE 함수를 사용하면 쉽게 구할 수 있지만, DECODE 함수 외에도 CASE 표현식이나 PIVOT 함수를 사용할 수도 있다. 목차 월별 합계 구하기 (가로 합계) 월별 합계 구하기 (세로 합계) 월별 합계 구하기 (가로 합계) SELECT SUM(DECODE(TO_CHAR(hiredate, 'MM'), '01', sal)) AS "01월" , SUM(DECODE(TO_CHAR(hiredate, 'MM'), '02', sal)) AS "02월" , SUM(DECODE(TO_CHAR(hiredate, 'MM'), '..
오라클 쿼리에서 가로 합계를 구하기 위해서는, 합계를 구할 각 칼럼을 SUM 함수를 사용하여 합산 후 모두 더하면 가로 합계가 계산된다. 오라클은 NULL과 수치 값을 더할 수 없기 때문에 가로 합계를 구할 때 계산 오류가 발생할 수 있으므로 아래의 주의 사항도 꼭 확인하기 바란다. 세로의 총합계를 구하기 위해서는 ROLLUP 함수를 사용하면 구할 수 있다. 목차 가로 합계 구하기 가로 합계 구할 때 주의 사항 GROUP BY 절과 가로 합계 구하기 가로 합계 구하기 WITH temp AS ( SELECT 150 AS col1, 80 AS col2, 200 AS col3 FROM dual UNION ALL SELECT 100 AS col1, NULL AS col2, 250 AS col3 FROM dual..
오라클 쿼리문에서 소수점 앞에 "0"을 표시하거나 소수점 자릿수를 고정하기 위해서는 TO_CHAR 함수를 사용하여 문자로 변환하면 된다. 오라클에서 숫자형식은 소수점 앞에 값이 없을 경우 "0"을 표시하지 않지만, 숫자를 문자 형식으로 변경하여 원하는 형태의 값을 만들 수 있다. 그러나 수치 값을 문자로 변환하는 과정에서 형식이 일치하지 않으면 오류가 발생할 수 있으니 아래의 주의사항을 꼭 확인하기 바란다. RTRIM(TO_CHAR("수치 값", "포맷"), '.') 예) RTRIM(TO_CHAR(123.456, 'FM9990.99'), '.') 목차 소수점 앞 0 표시 방법 소수점 자릿수 고정 방법 (2자리) 소수점 이하의 값이 없을 경우 주의사항 수치 값이 클 경우 주의 사항 소수점 앞 0 표시 방법..
2023년 8월 IT/개발자 세미나/컨퍼런스 일정 8월 11일(금)파이콘 한국 2023 8월11일~13일, 코엑스 그랜드볼룸 및 아셈볼룸, 유료 8월 15일(화)INFCON 2023 10:00~18:00, 코엑스 그랜드볼룸 및 아셈볼룸 8월 17일(목)한빛N MSA - #2 TDD 18:30~20:00, 한빛미디어, 유로(1만) 8월 22일(화)제7회 삼성 보안 기술 포럼 09:30~17:00, 삼성전자 서울R&D캠퍼스 8월 22일(화)Dell Technologies Forum 09:00~17:00, 코엑스 8월 24일(목)월간 닷넷 - 2023년 8월 18:30~21:30, 강남구 도산대로54길 53 지하 2층 산다라홀, 유료(1만) 8월 26일(토)I/O Extended 2023 Incheon 13:..
오라클 쿼리에서 하나의 칼럼에 여러 개의 값을 한 번에 입력하기 위해서는 IN 연산자를 사용하면 된다. IN 연산자는 OR 연산자를 여러 개 사용하여 쿼리문을 작성하는 것과 동일한 결과를 얻을 수 있다. 오라클에서는 다중칼럼 IN도 지원하기 때문에 아래의 예제를 참고하면 된다. 목차 IN 연산자 사용법 NOT IN 연산자 사용법 NOT IN 연산자 사용 시 주의사항 다중칼럼 IN 사용법 IN 연산자 사용법 SELECT * FROM emp WHERE job IN ('ANALYST', 'MANAGER', 'SALESMAN') job 칼럼에 IN 연산자에 입력된 직업(ANALYST, MANAGER, SALESMAN) 중 하나라도 일치하면 조회된다. IN 연산자는 1000개 값까지만 입력할 수 있으며, 그 이상..
오라클 쿼리에서 여러 행의 값을 하나의 열로 합치기 위해서 WM_CONCAT 함수를 사용할 수 있다. WM_CONCAT 함수는 사용법이 쉽고 중복제거도 되기 때문에 많이 사용했지만 오라클 11g R2부터는 해당 함수를 사용할 수 없으니 사용 시 유의해야 한다. 오라클 11g R2부터는 WM_CONCAT 함수 대신 LISTAGG 함수를 사용할 수 있다. 목차 WM_CONCAT 함수 사용법 LISTAGG 함수 사용법 (대체함수) WM_CONCAT 함수 사용법 SELECT job , WM_CONCAT(deptno) AS deptnos FROM emp WHERE job IN ('MANAGER', 'SALESMAN') GROUP BY job GROUP BY 절과 WM_CONCAT 함수를 사용하여 여러 행의 값을 ..
오라클에서 지난달(전달)의 첫날(1일)과 말일을 구하기 위해서는 TRUNC 함수와 ADD_MONTHS 함수를 사용하여 쿼리문을 복잡하게 작성하지 않아도 쉽게 구할 수 있다. 아래의 예제 외에도 해당 일자를 구할 수 있는 방법은 많이 있으며, 상황에 따라서 편리한 방법을 찾아서 사용하면 된다. 목차 이전달 첫날, 마지막날 구하기 이번달 첫날, 마지막날 구하기 이전달 첫날, 마지막날 구하기 SELECT TO_CHAR(SYSDATE, 'yyyy-mm-dd') AS "현재" , ADD_MONTHS(TRUNC(SYSDATE, 'mm'), -1) AS "이전달 첫날" , TRUNC(SYSDATE, 'mm') - 1 AS "이전달 말일" FROM dual TRUNC("날짜", "mm") 함수를 사용하여 해당 날짜의 ..