본문 바로가기

SQL14

Decode 함수와 형 변환 Oracle의 내장함수이며, 값을 비교해서 원하는 값으로 치환하게 해주는 함수입니다. Decode함수를 사용하다보니 형변환이 어떻게 일어나는지 궁금해졌고, 형변환에 대해서 잘 몰라서 문제가 되었던 적도 있엇습니다. 아래의 Oracle 문서에 보면 잘 나와 있습니다. 우선적으로 DECODE의 형식은 DECODE(expr,search,result,default) 형식이고, expr을 search와 비교해서 맞으면 result를 반환하고 아니면 default를 반환하는 함수입니다. 오라클은 첫번째 search값에 따라서 자동적으로 변환한다고 되어 있습니다. 즉 result값에 따라 같은 데이터타입으로 값이 반환되는 것입니다. first result값이 char나 null이면 자동적으로 결과값은 VARCHAR2.. 2021. 12. 29.
실행계획에서 Sort 연산 관련 종류 실행계획에서 보이는 Sort연산 관련 설명 Sort Aggregate - 전체 로우를 집계할 경우 (SELECE MAX(A),AVG(B),SUM(C) from AAA) Sort Order by - 데이터를 정렬할 경우 ( SELECE A,B,C from AAA ORDER BY A) Sort Group by - 소팅 알고리즘을 통해 그룹별 집계를 할 경우 (SELECT A,SUM(B) FROM AAA GROUP BY A ORDER BY A) Sort Unique - 서브쿼리절이 Unnesting 되는 경우, Union, Munus 등의 연산인 경우, Distinct 연산 후 Order by절을 사용 Sort Join - Sort Merge Join 하는 경우 Window Sort - Window 함수를 사.. 2021. 12. 14.
[일일점검] 쿼리 및 Shell 파일 - Linux& Unix 제가 일일점검 시 사용하는 Shell 파일을 올리고 사용법에 대해서 포스팅하겠습니다. 1.일일점검용 디렉토리를 생성해줍니다. (저의 경우에는 /u01/app/oracle 아래에 생성하였습니다.) $mkdir dailycheck $mkdir dailycheck/sql 2. dailycheck아래에 daily_chk.sh 파일을 생성합니다. (각자의 폴더에 맞게 수정하여 사용하면됩니다.) cd /u01/app/oracle/diag/rdbms/xe/XE/trace clear tail -1000 al* | awk '{if (($5=="2021") && $6 =="") {vdate = $0} else {print vdate,"|", $0} }' | grep -E -i "ORA-|error" ## sqlplus s.. 2021. 1. 27.
실행계획 확인하기,실제 실행계획 확인하기 실행계획을 확인하는 방법에는 여러가지가 있습니다. 그 중에서 간단하게 확인할 수 있는 방법을 포스팅하겠습니다. 실행계획 확인하기 1.쿼리 수행시 explain plan for 적기 해당 명령문을 포함하여 쿼리를 실행하면 결과값이 나오지 않고, statement processed라는 명령어가 나옵니다. 이 명령어는 SQL의 예상 실행계획을 만들어서 PLAN 테이블에 저장하기만 합니다. PLAN테이블에 저장된 실행계획은 DBMS_XPLAN.DISPLAY명령어를 사용해서 확인 할 수 있습니다. SQL> explain plan for select * from emp where employee_id = 100; Statement Processed. SQL Execution Time > 00:00:00.000 2... 2020. 12. 22.