2020. 9. 3. 15:52ㆍSQL/SQLD - SQL 기본 및 활용

NULL 값 조회
1) NULL은 모르는 값을 의미한다.
2) NULL은 값의 부재를 의미한다.
3) NULL과 숫자 혹은 날짜를 더하면 NULL이 된다.
4) NULL과 어떤 값을 비교할 때, '알 수 없음'이 반환된다.
5) NULL 은 default값이 적용되지 않음
6) NULL을 조회할 경우는 IS NULL을 사용하고
7) NULL값이 아닌 것을 조회할 경우는 IS NOT NULL을 사용한다.
NULL 관련 함수
1) - NVL 함수
- NULL이면 다른 값으로 바꾸는 함수이다.
- NVL(TOTAL, 0)'은 TOTAL 칼럼이 NULL이면 0으로 바꾼다.
2) - NVL2 함수
- NVL 함수와 DECODE 함수를 하나로 만든 것이다.
- NVL2(TOTAL, 1, 0) TOTAL칼럼이 NULL이 아니면 1을, NULL이면 0을 반환한다.
3) - NULLIF 함수
- 두 개의 값이 같으면 NULL을, 같지 않으면 첫 번째 값을 반환한다.
- NULLIF(TOATAL1, TOTAL2) 은 두 값이 같으면 NULL을 같지 않으면 TOTAL1을 반환한다.
4) - COALESCE 함수
- NULL이 아닌 최초의 인자 값을 반환한다.
- COALESCE(컬럼1, 컬럼2, 컬럼3, ......) 컬럼1이 NULL이 아니면 컬럼1의 값을 반환
NULL 이면 그 뒤의 값의 NULL 여부를 판단하여 값을 반환한다.
COUNT함수에서 NULL 값 처리
COUNT(*)는 NULL 값을 포함한 모든 행 수를 계산한다.
하지만 COUNT(칼럼명)은 NULL값을 제외한 행 수를 계산한다.
cross join natural join
DDL
1) TRUNCATE TABLE 테이블명
테이블의 모든 데이터를 삭제한다. 데이터가 삭제되면 테이블의 용량은 초기화 된다.
데이터 복구 불가능, 하나의 행만 삭제하지 못하고 모든 데이터를 삭제해야한다.
2) DROP TABLE 테이블명
테이블의 모든 데이터 삭제, 테이블 자체도 삭제, 데이터 복구 불가능
DML
3) DELETE FROM 테이블명
테이블의 모든 데이터를 삭제한다. 데이터가 삭제되어도 테이블의 용량은 감소하지 않는다.
데이터 복구 가능, 하나의 행만 삭제 가능.
DDL
1) ALTER TABLE 테이블 MODIFY 컬럼 DEFAULT10;
DML
1) INSERT INTO 테이블명(칼럼1, 칼럼2) VALUES (1번, 2번)
2) UPDATE 테이블명 SET 칼럼명 = '변경내용' WHERE 칼럼명 = '조건'
DCL
GRANT SELECT ON USER1.TABLE TO USER2
DECODE 함수 정리
DECODE(EMPNO, 1000, 'TRUE', 'FALSE')
EMPNO가 1000과 비교해서 같은면 트루 출력 다르면 펄스 출력
HAVING 특이사항
having 조건절에서 집계함수로 사용된 컬럼은 select로 조회 불가능
LEAD와 LAG함수
LEAD(대상 속성, 순서, 디폴트값) over
리드는 데이터를 끌어 올린다
LAG는 아래로 잡아 당긴다. 라고 생각하면 편함
'SQL > SQLD - SQL 기본 및 활용' 카테고리의 다른 글
SQLD 자격증 SQL 기본 및 활용 기출문제 / SQL시험 30회 시행 (0) | 2020.09.01 |
---|---|
SQLD 자격증 SQL 기본 및 활용 기출문제 / SQL시험 34회 시행 (0) | 2020.08.27 |
SQLD 자격증 SQL 기본 및 활용 기출문제 / SQL시험 33회 시행 (0) | 2020.08.17 |
SQLD 자격증 SQL 기본 및 활용 기출문제 / SQL시험 32회 시행 (0) | 2020.08.13 |
SQLD 자격증 SQL 기본 및 활용 기출문제 / SQL시험 31회 시행 (0) | 2020.08.09 |