Oracle Database(Function 4)
DISTINCT : 중복배제
GROUP BY 절
: 특정 컬럼을 기준으로 그룹화하여 테이블에 존재하는 행들을 그룹별로 구분하기 위해 사용한다.
: 어떤 컬럼을 기준으로 그룹함수를 적용해 줄지 기술해 주어야 할 경우에 SELECT 문에 GROUP BY 절을 추가해 절 뒤에 해당 컬럼을 기술한다.
HAVING 절
: GROUP BY 절에 의해 생성된 결과 값 중 원하는 조건에 부합하는 자료만 보고자 할 때 사용한다.
: SELECT 절에 조건을 사용하여 결과를 제한할때는 WHERE 절을 사용하며, 그룹의 결과를 제한 할때는 HAVING 절을 사용합니다.
JOIN
: 관계형 데이터 베이스는 두개 이상의 테이블에 정보가 나뉘어져 있다. 중복해서 데이터를 저장하는 것을 지양하기 때문이다.
각각의 테이블에 분리 되어 있는 연관성이 있는 데이터들을 연결하거나 조합하여 데이터를 사용할 수 있다면 중요한 정보로서 가공될 수 있 으며 이러한 작업들을 JOIN(조인) 이라고 한다.
여러 테이블에 흩어져 있는 정보 중에서 사용자가 필요한 정보만 가져와서 가상의 테이블처럼 만들어서 결과를 보여준다.
종류 | 의미 |
.Equl JOIN | 동일 컬럼을 기준으로 조인 |
.NON_Equl JOIN | 동일 컬럼이 없이 다른 조건을 사용하여 조인 |
.Outer JOIN | 조인 조건에 만족하지 않은 로우도 나타냄 |
.Self JOIN | 한 테이블 내의 조인 |
. Cross JOIN(Cartesain Product : 카티션 곱) | 2개 이상의 테이블이 조인될 때 Where 절에 의해 공통되는 컬럼에 의한 결함이 발생하지 않는 경우에 의미 |
ANSI Syntax
: ANSI SQL
: DBMS(Oracle, My-SQL, DB2 등등)들에서 각기 다른 SQL를 사용하므로, 미국 표준 협회에서 이를 표준화하여 표준 SQL문을 정립 시켜 놓은 것이다.
ANSI SQL 특징
: 표준 SQL문이기 때문에 DBMS의 종류에 제약을 받지 않는다. 즉, 특정 벤더에 종속적이지 않아 다른 벤터의 DBMS로 교체하더라도 빠르게 다른 벤더사를 이동할 수 있다. 특정 DBMS의 이탈이 가속되는 것도 ANSI SQL의 영향이 크다고 할 수 있다.
테이블간의 JOIN 관계가 FROM에서 명시되기 때문에 WHERE 문에서 조건만 확인하면 된다.
즉, 가독성이 일반 Query문 보다 좋다.
8월 26일 실습 예제
GitHub - kkmwkk/OracleDatabase_practice: OracleDatabase_practice
OracleDatabase_practice. Contribute to kkmwkk/OracleDatabase_practice development by creating an account on GitHub.
github.com