[DBMS]DBMS Review
카테고리: DBMS
[13] DBMS Review
13.1. JOIN이 필요한 이유
- 필요한 정보 (상품명, 유저 정보, 카테고리 정보 등)가 각기 다른 테이블에 분산 저장되어 있을 때, 이를 하나의 테이블로 가져와서 보기좋게 데이터를 추출하기 위함이다.
13.2. 데이터 유형
- 문자형
- CHAR, VARCHAR, LONG, CLOB
- 숫자형
- INT, BIGINT, NUMERIC, FLOAT, DOUBLE
- 날짜형
- DATE, TIMESTAMP
- 참/거짓
- BOOLEAN
13.3. 데이터 유형 변환 방법
CAST(column명 as 데이터유형) to_date(컬럼명, 'yyyymmdd')
숫자형<---------------------------->문자형<----------------------------->날짜형
column명 :: 데이터유형 to_char(컬럼명, 'yyyymmdd')
13.4. 문자형 데이터 가공하기
- 특정 문자열만 잘라내기
- left(), right(), substring()
- 문자열 합치기
-
A B, concat(A, B)
-
- 조건별로 그룹화하기
- case when ~ else ~ end
- null값 치환하기
- nvl(컬럼명, 대처값) //오라클
- coalesce(컬럼명, 대처값)
- 그 외
- 특정 문자열 자르기 : trim(), ltrim(), rtrim()
- 특정 문자열을 임의 값으로 변경 : replace()
- 대문자로 변경 : upper()
- 소문자로 변경 : lower()
- 문자열의 길이 반환 : length()
13.5. 숫자형 데이터 가공하기
- 반올림/올림/내림 : round(), ceiling(), trunc()
- 절대값 반환 : abs()
- null값 치환하기 : coalesce(컬럼명, 0), nvl(컬럼명, 0)
13.6. 날짜형 데이터 가공하기
- 날짜 더하기
- 날짜 + interval ‘1 day’
- dateadd(‘day’, 날짜, 날짜)
- 날짜 빼기
- datediff(‘day’, 날짜, 날짜)
13.7. Count()
- 특정 집합의 건수를 확인한다.
- 데이터 건수가 0건인 테이블에 대한 count(*)는 결과가 0이라고 나온다.
13.8. MAX(), MIN()
- 최대값 및 최소값에 해당하는 행이 존재하지 않는 경우, NULL.
13.9. AVG(), SUM()
- NULL인 행은 평균과 합계를 구할 때 구하는 대상에 포함되지 않는다.
- 연산시 NULL과 연산하려고 하면 결과는 NULL이 된다.
댓글 남기기