속성의 특성에 따른 분류 : 기본속성, 파생속성, 설계속성
구성방식에 따른 분류 : PK, FK, 일반속성
FROM-WHERE-GROUP BY-HAVING-SELECT-ORDER
TRUNCATE는 테이블의 모든 행(row)의 데이터를 삭제한다. DDL에 속함
- 참고) DROP은 테이블 정의 자체를 삭제한다.
또 다른 DDL : CREATE, ALTER, DROP
LPAD('X', 5, 'X') => XXXXX : 총 다섯자리를 'X'로 채운다.
ROUND(12345.678, -2) => 십의자리에서 반올림하여 12300
SIGN(120) => 양수면 1, 음수면 -1, 0이면 0을 반환한다.
COMM
NULL
500
NVL(COMM, 100), ISNULL(COMM, 100) : 100, 500
NULLIF(COMM, 100) : NULL, 500
COALESCES(COMM, 100) : 100, 500
DECODE(A, B, X, Y)
30/24/60은 30x1/24/60으로 생각하자. 1일을 24시간으로 나누면 1시간이고 1시간을 60으로 나누면 1분이다.
NOT > AND > OR
SUM(NULL)은 NULL을 리턴하고
COUNT(NULL)은 0을 리턴한다.
RANK는 2등이 2명일 경우 1,2,2,4
DENSE_RANK는 2등이 2명일 경우 1,2,2,3
NUMBER(5,2)는 XXX.YY 로 표현되야 한다. XXXX.Y는 불가함! 소수는 숫자가 더 많아져도 OKAY
CHAR(10)으로 컬럼이 정의되어 있을 때 NULL값은 들어갈 수 있다.
COUNT를 사용할 때 CASE ~ ELSE 0가 있으면 안된다.
OR는 중복을 1번만 카운트한다.
GROUP BY 절에는 컬럼 별칭 사용 불가, 그룹 합수도 사용 불가하다.
별칭을 사용했으면 별칭으로 정렬해야한다.(테이블.별칭 사용 불가)
<= ALL(20,30,40)은 20,30,40보다 작은 값을 구하는 것이니 20보다 작은 수를 찾으면 된다.