SQL 첫걸음 13-15강

Andrew·2022년 1월 2일
0

SQL 첫걸음

목록 보기
3/9

이 글은 아사이 아츠시 저 "하루 30분 36강으로 배우는 완전 초보의 SQL 따라잡기 SQL 첫걸음"을 기반으로 작성되었습니다.

13강

문자열 연산

concat

문자열을 결합하는 연산자

select concat(quantity, unit) from table

substring

문자열의 일부분을 계산해서 반환해주는 함수

select substring('20140125001',1,4)

> '2014'

trim

문자열의 앞뒤의 공백을 제거해주는 함수

select trim('ABC     ')

> 'ABC'

character_length

문자열의 길이를 반환해주는 함수 (char_length로 줄여쓸 수 있음)

select char_length('ABC')

> 3

14강

날짜 연산

current_timestamp

현재 날짜를 반환해주는 함수(인자 및 괄호가 필요없음)

select current_timestamp

> 2022-01-02 05:17:21

날짜의 덧셈과 뺄셈

interval n [year/month/day/hour/minute/second]

interval은 기간형 상수를 나타내는 예약어로 n은 양수, 음수 모두 가능하다.

select current_date + interval 2 day

> 2022-01-04 00:00:00
select current_date - interval 1 year

> 2021-01-02 00:00:00

15강

CASE

함수의 IF 문과 비슷한 개념으로 '검색 CASE문'과 '단순 CASE문' 2개가 존재

1) 검색 CASE

CASE WHEN 조건1 THEN 식1
[WHEN 조건2 THEN 식2]
[ELSE 식3]
END

2) 단순 CASE

CASE a
WHEN 1 THEN '고양이'
WHEN 2 THEN '강아지'
ELSE '미지정'
END

주의할 점
1) ELSE를 생략하면 자동으로 ELSE NULL로 지정이 된다. 따라서 ELSE를 생략하지 않고 지정하는 습관을 들이는 것이 좋다.

2) 단순 CASE문에서는 WHEN에서 NULL과 비교할 수 없다. 따라서 검색 CASE문에서 IS NULL로 비교를 해줘야 한다.

profile
조금씩 나아지는 중입니다!

0개의 댓글