1. 오라클 함수(function)
1) 단일 행 함수 : 행(row)이 하나씩 함수의 아규먼트로 전달되고, 행 마다 하나씩 결과가 리턴되는 함수.
* (예) to_date, to_char, lower, upper, nvl, ...
2) 다중 행 함수 : 여러 개의 행들이 함수의 아규먼트로 전달되고, 하나의 결과가 리턴되는 함수.
* (예) 통계 관련 함수: count, sum, avg, max, min, variance(분산), stddev(표준편차), ...
*** 함수가 단일 행 함수인지 다중 행 함수인지 꼭 구분할 수 있어야함!!
2. 단일 행 함수 실습
1) lower
2) to_char
3) nvl
3. 다중 행 함수 실습
1) count
2) 통계
3) 단일 행 함수와 다중 행 함수는 함께 사용할 수 없음!
(1) select sal, sum(sal) from emp; --> 에러 발생
(2) select nvl(comm, 0), sum(comm) from emp; --> 에러 발생
4. 그룹별 쿼리
*** group by에 없는 칼럼은 select에 입력할 수 없음!! ***
[m] where절은 테이블에서 조건식에 해당하는 레코드들을 리턴해주고, having절은 group by로 나눠진 그룹들에서 조건식에 해당하는 그룹을 리턴해준다.
5. Join
1) 조인이란 : 2개 이상의 테이블에서 데이터를 검색하는 방법.
2) 조인의 종류
(1) inner join
(2) outer join : left outer join, right outer join, full outer join
* inner와 outer 글자는 생략가능
3) 조인 문법
(1) ANSI 표준 문법
select 컬럼, ... from 테이블1 join종류 테이블2 on 조건 |
(2) Oracle 문법
select 컬럼, ... from 테이블1, 테이블2, ... where 조건식; |
6. Inner Join
1) Inner Join을 실행하면 테이블이 새로 만들어진다.
2) 새로 만들어진 테이블에서 select절에 입력한 컬럼들이 검색된 결과를 볼 수 있다.
3) 컬럼 이름이 겹치지 않을 경우 컬럼 앞에 테이블 명을 명시하지 않아도 된다.
4) alias를 쓰지 않고 테이블 이름 전체를 입력해도 된다.
7. Outer Join
1) left outer join
2) right outer join
3) full outer join
8. equi-join / non-equi join
1) equi-join : join의 조건식이 = 연산자를 사용해서 만들어진 경우.
2) non-equi join : join의 조건식이 부등호를 사용해서 만들어진 경우.
9. self join
※ 함수 > 메서드 : 클래스 안에 있는 함수가 메서드
(Java는 함수가 클래스 안에서만 실행될 수 있기 때문에 메서드라고 부르는거)
※ union : 합집합, intersect : 교집합
'SQL' 카테고리의 다른 글
241119 SQL 05 - modify, create as select 구문, truncate, drop, insert, update, delete, generated as identity (0) | 2024.11.19 |
---|---|
[Trouble Shooting] 테스트 실패: ORA-12541: 접속할 수 없습니다. (0) | 2024.11.18 |
241118 SQL 04 - rollup, SQL 종류, create, insert, varchar2, constraint, Foreign Key, default, 메타 테이블, alter (1) | 2024.11.18 |
241115 SQL 03 - Subquery (1) | 2024.11.15 |
241113 SQL 01 - SQL 기본 쿼리 문장 (1) | 2024.11.13 |