본문 바로가기

SQL 개발자6

[SQL 기본과 활용] Multi-Row Function(★★★) 다중행함수(Multi-Row Function) 여러 행의 그룹에 대해 적용되는 함수 다중행 함수의 종류 그룹함수(Group Function) 집계함수(Aggregate Function) : COUNT, SUM, AVG, MAX/MIN 고급 집계함수 : ROLLUP, CUBE, GROUPING SETS 윈도우 함수(Winodw Function) 집계함수 >> 전체의 통계를 낸다고 생각해라 여러 행의 그룹에 대한 연산을 통해 하나의 결과를 반환함 SELECT, HAVING, ORDER BY 절에 사용 가능 GROUP BY 절을 통해 그룹핑 기준 명시 NULL을 제외하고 계산 100명 중 10명의 성적이 NULL일 때, 전체 평균을 90명에 대한 평균 "NULL 값은 없다고 생각" 입력행 전체가 NULL인 경.. 2021. 4. 9.
[SQL 기본과 활용] Subquery(★★★) 서브쿼리 SQL문 안에 포함된 SQL문 예) 신장이 가장 큰 선수의 정보 조회 SELECT MAX(HEIGHT) FROM PLAYER + SELECT PLAYER_NAME, POSITION, HEIGHT FROM PLAYER WHERE HEIGHT = 194; = SELECT PLAYER_NAME, POSITION, HEIGHT FROM PLAYER WHERE HEIGHT = (SELECT MAX(HEIGHT) FROM PLAYER); 서브쿼리 SQL문 안에 포함된 SQL문 서브쿼리 위치 : SELECT절, WHERE절, FROM절(Inline View) 결과 칼럼/행의 수 : 단일행 서브쿼리 / 다중행서브쿼리 단일칼럼 서브쿼리 / 다중칼럼서브쿼리 메인 쿼리와의 연관성 : 연관(상관) 서브쿼리 / 비연관.. 2021. 4. 8.
[SQL 기본과 활용] Function "특정한 기능을 수행하는 단위" 함수의 유형 - 생성 주체 사용자 정의 함수(User Defined Function) - 사용자가 정의 내장 함수(Built-in Function) - 벤더가 정의 - 적용 범위 단일 행 함수(Single-Row Function) 문자형 함수, 숫자형 함수, 날짜형 함수 (데이터타입에 따라서 구분) 제어함수, 변환함수, NULL 관련 함수(역할과 사용법 정리 필수!)** 다중 행 함수(Multi-Row Function) 그룹함수(Group Function) 집계 함수(Aggregate Function) 포함 윈도우 함수(Window Function) 단일행 함수의 특징 예) SELECT PLAYER_NAME, LENGTH(PLAYER_NAME) AS 길이 FROM PLAY.. 2021. 3. 29.
[SQL 기본과 활용] DDL 테이블 생성 테이블 생성 규직 테이블명 객체를 의미할 수 있는 이름으로, 단수형을 권고함 다른 테이블의 이름과 중복되지 않아야 함 칼럼명 한 테이블 내에서는 칼럼명이 중복되지 않아야 함(다른 테이블과는 중복되어도 에러가 발생하지 않음) 테이블 생성시 각 칼럼들은 괄호 내에서 콤마로 구분됨 칼럼 뒤에 데이터 유형이 반드시 지정되어야 함 테이블명 & 칼럼명 사전에 정의된 예약어(Reserved word)는 사용불가 ex) SELECT, FROM WHERE 같은 것 테이블명과 칼럼명에는 문자, 숫자, 일부 기호( _ $ # )만 허용됨 테이블명과 칼럼명은 반드시 문자로 시작해야 함( 숫자 기호 불가) 제약 조건명 : 다른 제약 조건의 이름과 중복되지 않아야 함 Oracle의 주요 데이터 타입 Type 설명 C.. 2021. 3. 29.
[SQL 기본과 활용] BASIC DML(INSERT, DELETE, UPDATE) INSERT - 테이블에 한 건의 레코드를 추가함 *여러 건 입력시 INSERT ALL ~ 구문 활용 - 문자 또는 날짜 값의 경우 작은 따옴표로 묶음 - 숫자 데이터는 작은 따옴표 없이 사용 두 가지 유형으로 입력 가능 INSERT INTO 테이블명 (COLUMN_LIST) VALUES (VALUE_LIST); 일부 칼럼에 대응되는 값만 입력 칼럼 순서는 실제 테이블의 칼럼 순서와 무관 정의하지 않은 칼럼은 NULL 값이 입력됨 ex) INSERT INTO PLAYER (PLAYER_ID, PLAYER_NAME,...) VALUES ('29999001', '손흥민', ...); INSERT INTO 테이블명 VALUES ( 전체 COLUMN의 VALUE_LIST); 전체 칼럼에 대응되는 값을 모두 입력.. 2021. 3. 26.
[SQL 기본과 활용] BASIC DML(SELECT) 테이블의 구조 확인 DESCRIBE(=DESC) + 테이블 이름; →이름 / 널 / 데이터 타입 등 출력 SELECT - 테이블에 존재하는 레코드의 값을 조회 - SELECT [ALL/DISTINCT] 칼럽1, 칼럼2, ... FROM 테이블명 EX) SELECT PLAYER_ID, PLAYER_NAME, TEAM_ID, POSITION FROM PLAYER; →"PLAYER 테이블에서 PLAYER_ID, PLAYER_NAME, TEAM_ID, POSITION 울 출력해라" 라는 의미 ALL : 중복데이터 모두 출력(DEFAULT) DISTINCT : 중복 데이터를 1건으로 출력 - DISTINCT 키워드는 첫 칼럼의 앞에 위치해야 함 - 칼럼의 조합에 대해 중복 체크 - NULL 값도 하나의 값으로 간.. 2021. 3. 23.