목록DB (8)
개발 공부 기록

DDL(Data Definition Language) - 데이터 정의 언어로 객체(OBJECT)를 만들고(CREATE), 수정하고(ALTER), 삭제(DROP)하는 구문을 말함 - DB관리자나 설계자가 주로 사용함 ** 오라클 객체 종류 테이블(TABLE), 뷰(VIEW), 시퀀스(SEQUENCE), 인덱스(INDEX), 패키지(PACKAGE), 프로시저(PROCEDUAL), 함수(FUNCTION), 트리거(TRIGGER), 동의어(SYNONYM), 사용자(USER) CREATE 테이블이나 인덱스, 뷰 등 데이터베이스 객체를 생성하는 구문 [표현식] CREATE TABLE 테이블명( 컬럼명 자료형(크기), [DEFAULT 기본값] [제약조건] 컬럼명 자료형(크기), [DEFAULT 기본값] [제약조건] ..

단일 행 서브쿼리(SINGLE ROW SUBQUERY) 서브쿼리의 조회 결과값의 개수가 1개일 때 단일행 서브쿼리 앞에는 일반 연산자 사용 ex1) HAVING절에서 서브쿼리 ** 서브쿼리는 WHERE절, SELECT, FROM, HAVING절에 사용이 가능하다! 다중 행 서브쿼리(MULTI ROW SUBQUERY) 서브쿼리의 조회 결과 값의 행이 여러 개인 서브쿼리 ex1) ex2) - 사수에 해당하는 사번을 조회 중복을 제거하면 사수의 사번이 나온다 -> NULL 값은 IS NOT NULL로 없앰 ex3) ex2)에서 사수가 아닌 일반사원 조회 다중 행 다중 열 서브쿼리 서브쿼리의 조회 결과 컬럼의 개수와 행의 개수가 여러 개인 서브쿼리

CROSS JOIN - 카테시안 곱(Cartesian Product)라고도 하며 - 조인되는 테이블의 각 행들이 모두 매핑된 데이터가 검색되는 조인 방법 - 검색되는 데이터 수는 ‘행의 컬럼 수 * 또 다른 행의 컬럼 수‘로 나옴 ** 방대한 데이터로 과부하의 위험이 있기 때문에 실무에서 잘 사용되지 않음 ex1) ANSI 구문 - CROSS JOIN ex2) 오라클 구문 - JOIN되는 컬럼을 지정하지 않으면 CROSS JOIN이 된다. NON_EQAUL JOIN 지정한 컬럼 값이 일치하는 경우가 아닌 값의 범위에 포함되는 행들을 연결하는 방식 ex1) ANSI 구문 ex2) 오라클 구문 SELF JOIN 두 개 이상의 서로 다른 테이블을 연결하는 것이 아닌 같은 테이블을 조인하는 것 ex1) ANSI..

ORDER BY & GROUP BY & HAVING ORDER BY SELECT한 컬럼에 대해 정렬을 할 때 작성하는 구문으로 SELECT 구문의 가장 마지막에 작성하며 실행 순서 역시 가장 마지막에 수행됨 - 오름차순 : ASC (기본값) - 내림차순 : DESC GROUP BY 그룹 함수는 단 한 개의 결과 값만 산출하기 때문에 그룹이 여러 개일 경우 오류 발생 -> 여러 개의 결과 값을 산출하기 위해 그룹 함수가 적용될 그룹의 기준을 GROUP BY절에 기술하여 사용 - 위와 같이 DEPT_CODE는 여러개의 값이 출력, SUM은 하나의 값을 출력이 되기 때문에 오류 발생 - >DEPT_CODE를 그룹으로 묶어주어야 한다! ex1) - GROUP BY는 DISTINCT로 중복을 제거한 것이 아니라 ..

- LAST_DAY 인자로 전달받은 날짜가 속한 달의 마지막 날짜 반환 5) LAST_DAY [표현법] LAST_DAY(DATE) - 해당 월의 마지막 날짜를 반환한다. - 결과값은 DATE이다. ex1) 속한 달의 마지막 날 조회 ex2) 입사월의 마지막 날 조회 - EXTRACT 년, 월, 일 정보 추출하여 반환 6) EXTRACT [표현법] EXTRACT(YEAR|MONTH|DAY FROM DATE) - 특정 날짜에서 연도, 월, 일 정보를 추출해서 반환한다. YEAR : 연도만 추출 MONTH : 월만 추출 DAY : 일만 추출 - 결과값은 NUMBER이다. ex1) 입사 년, 월, 일 조회 - 추출된 데이터 값 오름차순으로 정렬 ** 날짜 포맷 변경 -- 날짜포맷변경 ALTER SESSION S..

함수 하나의 큰 프로그램에서 반복적으로 사용되는 부분들을 분리하여 작성해 놓은 작은 서브 프로그램 호출하며 값을 전달하면 결과를 리턴하는 방식으로 사용 - 단일 행 함수 : 각 행 마다 적용되어 입력 받은 행의 개수만큼 결과 반환 - 그룹 함수 : 특정 행들의 집합으로 그룹이 형성되어 적용됨 그룹 당 1개의 결과 반환 문자 처리 함수 - LENGTH 주어진 컬럼 값/문자열의 길이(문자 개수) 반환 - LENGTHB 주어진 컬럼 값/문자열의 길이(BYTE) 반환 ** 한글 한 글자를 3BYTE 1) LENGTH / LENGTHB - LENGTH(컬럼|'문자값') : 글자 수 반환 - LENGTHB(컬럼|'문자값') : 글자의 바이트 수 반환 한글 한 글자 -> 3BYTE 영문자, 숫자, 특수문자 한 글자 ..