Kosta 클라우드 네이티브 애플리케이션 개발 (CNA) 교육 4일차
2024. 11. 20. 17:26ㆍKosta 클라우드 네이티브 어플리케이션 개발(CNA) 교육
Inner Join
- Default join = Inner join
SELECT d.deptno, d.dname, e.empno, e.ename, e.sal, s.grade
FROM dept d LEFT (생략가능 inner)
JOIN emp e ON d.deptno = e.deptno
LEFT (생략가능 inner) JOIN salgrade s ON e.sal BETWEEN s.losal AND s.hisal;
Outer Join
- 조인 후 참조되는 데이터가 없이도 데이터 출력
select d.deptno, d.dname, e.ename
from emp e, dept d
where e.deptno(+) = d.deptno order by d.deptno asc;
(+) 는 뒤에 NULl 값이라도 출력
Non - equal join
- 범위값으로 참조 연결
select e.ename, e.sal, s.grade, s.losal, s.hisal
from emp e, salgrade s
where e.sal > s.losal and e.sal < s.hisal;
NULL 값을 포함하여 emp, deptno, salgrade 테이블 연결
SELECT d.deptno, d.dname, e.empno, e.ename, e.sal, s.grade
from emp e, dept d, salgrade s
where d.deptno = e.deptno(+)
and e.sal between s.losal(+)
AND s.hisal(+)
ORDER BY d.deptno asc;
SELECT d.deptno, d.dname, e.empno, e.ename, e.sal, s.grade
FROM dept d
LEFT OUTER JOIN emp e ON d.deptno = e.deptno
LEFT OUTER JOIN salgrade s
ON e.sal BETWEEN s.losal AND s.hisal;
GROUP BY
- 조건 : HAVING
- Group의 조건은 Having에 넣어야 한다
- Where에는 Group 함수를 사용할 수 없다
- 그룹함수는 group by 없이도 사용할 수 있다.
- 테이블 전체를 대상으로 그룹짓는다
ORA-00979: not a GROUP BY expression
- 그룹함수와 일반컬럼을 동시에 출력할 경우 반드시 group by (일반컬럼)
ORA-00937: not a single-group group function
- Group by 사용할 것
GROUP 함수
- 결측 데이터는 무시
- COUNT
- AVG
- MAX
- MIN
- SUM
ROUND : 반올림
- round(값, 자릿수)
- select round(10.567, 2) from dual; --> 10.57
CEIL : 올림
- CELL(값)
- select ceIl(10.567, 2) from dual; --> 11
FLOOR : 내림
- FLOOR(값)
- select FLOOR(10.567) from dual; --> 10
TRUNC : 버림
- TRUNC(값, 자릿수)
- select TRUNC(10.567, 2) from dual; --> 10.56
SubQuery
- 다른 SQL 쿼리 내부에 포함된 쿼리
- 괄호로 둘러싸여 있음
주요 유형
- 스칼라 서브쿼리: 단일 값 반환
- 행 서브쿼리: 단일 행 반환
- 열 서브쿼리: 단일 열의 여러 행 반환
- 테이블 서브쿼리: 여러 열과 행 반환
사용 위치
- SELECT 절
- FROM 절
- WHERE 절
- HAVING 절
특징
- 중첩 가능
- 대부분 독립적으로 실행 가능
- 성능에 영향을 줄 수 있음
장단점
장점:
- 복잡한 쿼리 단순화
- 가독성 향상
- 유연한 데이터 조작
단점:
- 과도한 사용 시 성능 저하
- 복잡성 증가 가능
ANY 연산자
- 서브쿼리 결과의 어떤 값이라도 조건을 만족하면 TRUE를 반환
- 하나라도 만족하면 된다
- 주로 >, <, >=, <=, <> 등의 비교 연산자와 함께 사용
ALL 연산자
- 서브쿼리 결과의 모든 값이 조건을 만족해야 TRUE를 반환
- 모두 만족 해야한다
- 주로 // >, <, >=, <=, <> 등의 비교 연산자와 함께 사용
'Kosta 클라우드 네이티브 어플리케이션 개발(CNA) 교육' 카테고리의 다른 글
Kosta 클라우드 네이티브 애플리케이션 개발 (CNA) 교육 6일차 (0) | 2024.11.22 |
---|---|
Kosta 클라우드 네이티브 애플리케이션 개발 (CNA) 교육 5일차 (0) | 2024.11.21 |
Kosta 클라우드 네이티브 애플리케이션 개발 (CNA) 교육 3일차 (1) | 2024.11.19 |
Kosta 클라우드 네이티브 애플리케이션 개발 (CNA) 교육 2일차 (1) | 2024.11.18 |
Kosta 클라우드 네이티브 애플리케이션 개발 (CNA) 교육 1일차 (0) | 2024.11.15 |