반응형
반응형
오라클에서 자주 사용되는 작업중 하나가 이 글에서 정리할 JOIN이라는 것인데요. 그동안 하나의 테이블에서 DML 명령어를 이용했지만 이번엔 서로 다른 테이블간에 상호연결을 하는 JOIN에 대해서 공부해보겠습니다. 조인의 종류가 많기 때문에 여기서는 내부조인과 외부조인을 정리하고, 다음글에서 나머지 조인들을 정리할 예정이고 예제는 Oracle의 기본 사용자인 HR계정을 통해 실습하도록 할게요. ■ 조인 ( JOIN ) 1. 조인이란?? → 서로 다른 테이블간에 설정된 관계가 결합하여 1개 이상의 테이블에서 데이터를 조회하기 위해 사용 됩니다. 이 때 테이블간의 상호 연결을 조인이라고 하는데요. 각각의 테이블에 분리된 연관성 있는 데이터를 연결하거나 조합해야 하는데 이러한 일련의 작업들을 조인이라고 합니다..
어제 하루종일 내장함수를 정리해서 기분은 좋지만서도 앞으로 정리해야될 분량을 보면 끝이 나지 않을것 같은 느낌에 힘이 조금 빠집니다. 그래도 제목 11번까지 왔으니 힘내서 열심히 정리해볼게요. 이번 포스팅에 정리할 서브쿼리는 쉽게말해서 기본 쿼리문법안에 또 다른 SELECT문이 들어간다고 생각하시면 될거에요. ■ 서브쿼리 ( Sub Query ) 1. 서브쿼리란?▶ 추가정보를 제공할 목적으로 하나의 SQL 문장 내부에 존재하는 SELECT 문장을 말합니다.▶ DML에 속하는 모든 문장에 서브쿼리를 사용할 수 있습니다.▶ 서브쿼리는 SELECT문장에서 리스트로 올 수 있고(일반 서브쿼리), FROM절에 올 수 있고(인라인 뷰), WHERE절(중첩 쿼리)에 올 수 있습니다. ▶ 연산자의 오른쪽에 와야 합니다..
드디어 내장함수의 여섯번째 마지막 NULL 관련함수입니다. 하루종일 오라클 함수를 공부하다 보니 머리가 아파 졸리기 시작하니 후딱 마무리 짓고 자러가야겠어요. NULL 함수는 오라클 기본 사용자인 HR계정의 EMPLOYEES테이블을 이용하였고, 마찬가지로 예제를 통해 정리하도록 하겠습니다. 숫자나 문자는 dual 테이블을 이용했는데 그 이후는 기존 데이터를 사용하는게 아무래도 편하네요. ■ NVL 함수1. 구문형식NVL(expr1, expr2) 2. 설명expr1의 값이 null이면 expr2를 반환하고, null이 아니면 expr1을 반환하는 함수 3. 예제Q) HR계정의 employees테이블 중 Commission_PCT컬럼은 커미션 비율이 들어있는 컬럼입니다. (판매부서 소속 사원들만 값이 있고,..
오라클 내장함수에도 자바의 if문과 else if문등 조건문등을 쓸 수 있는 함수가 있는데요. 바로 DECODE함수와 CAS 표현식 2가지입니다. 엄밀히 말하자면 Decode함수는 SQL함수이지만 Case는 함수가 아닌 표현식의 일종입니다. 그러나 표현식이지만 Decode보다 더 확장된 기능을 제공합니다. ■ DECODE 함수 1. 구문형식Decode( expr, search1, result1, search2, result2, …… , default_result) 2. 설명디코드 함수는 첫번째 파라미터로 들어오는 expr 표현식을 검사하여, 이 값이 search1에 해당할 경우 result1을 반환하고, search2에 해당하면 result2를 반환합니다. ※ default_result는 생략될 수 있고..
이번글은 내장함수중에 조금 어려울 수도 있는 부분인 변환함수에 대해서 정리할 시간입니다. 날짜타입을 문자형으로 변환하거나, 문자타입을 날짜형으로 변환하는등 제가 공부해보면서 체감상 느낌은 암기가 잘 안되서 힘들었습니다. ■ 변환 내장함수 1. TO_CHAR→ 문자형 데이터로 형변환하는 함수 ① TO_CHAR(character) : 파라미터로 문자형 데이터 타입을 문자형 VARCHAR2 타입으로 반환. ② TO_CHAR(datetime) : 날짜형 데이터 타입을 문자형 VARCHAR2 타입으로 반환. 데이트 타임에 대해서는 두가지를 실습해보겠습니다. 먼저 SCOTT계정으로 현재시간을 테스트 하는 예제와, 테이블을 새로 만들어 타임존을 설정한뒤 테스트하는 예제 2가지입니다. 첫번째 예제로 SCOTT계정의 e..
숫자 내장함수와 문자 내장함수에 이어서 날짜 내장함수를 이어서 정리해 보겠습니다. 정말정말정말 딱딱하고 재미 없는 부분이라 얼른 끝내고 서브쿼리와 JOIN으로 넘어가고 싶은 마음이 굴뚝 같습니다. ■ 날짜 내장함수 1. SYSDATE→ 현재 날짜를 반환하는 함수.→ 현재 날짜에는 날짜와 시간(시, 분, 초)를 포함합니다.→ sysdate와 비슷한 기능으로 systimestamp / current_time / current_timestamp(0~9)가 있습니다. 2. ADD_MONTH(date, int)→ 임의의 날짜에 개월 수를 더한 뒤 그 결과를 타입으로 변환하는 함수. 3. MONTH_BETWEEN(date1, date2)→ 두 날짜 사이의 개월수 차를 구하여 숫자형으로 반환하는 함수. 4. NEXT..