13장 문자열 연산
문자열 결합
- "+" : SQL Server
- "||" : Oracle, DB2, PostgreSQL
- CONCAT : MySQL
문자열 결합 2개의 열 데이터를 모아서 1개의 열로 처
SELECT * FROM sample35;
quantity : 100
unit : 개
SELECT CONCAT(quantity, unit) FROM sample35;
CONCAT(quantity, unit) : 100개
SUBSTRING 함수
SUBSTRING('원본 문자열', 시작 위치, 가져올 길이)
SUBSTRING('20140125001', 1, 4)
TRIM 함수
- 문자열 중에서 스페이스를 제거하는 기능
- 주로 CHAR 타입에 많이 사용. 그 이유는 문자열 길이가 고정되어 있어 남은 공간이 스페이스로 채워지기 때문에 스페이스 제거하기 위해.
CHARACTER_LENGTH 함수
- 문자열 길이를 반환해주는 함수
- CHAR_LENGTH 줄여서 사용하기도 한다.
OCTET_LENGTH
문자세트(character set)
- EUR-KR(문자세트) : 12개(문자 수) / 19개(바이트 수)
- UTF-8(문자세트) : 12개(문자 수) / 26개(바이트 수)
- 문자열 데이터의 길이(바이트 수)는 문자세트에 따라 다르다.
14장 날짜 연산
CURRENT_TIMESTAMP, CURRENT_DATE INTERVAL
- 시스템 날짜 : 하드웨어 상의 시계로부터 실시간으로 얻을 수 있는 일시적인 데이터
- RDBMS 에서도 시스템 날짜와 시간을 확인하는 함수를 제공
날짜 데이터 서식 지정
- TO_DATE : 문자열 데이터 -> 날짜형 데이터
TO_DATE('2014/01/25', 'YYYY/MM/DD')
- TO_CHAR : 날짜형 데이터 -> 문자열 데이터
TO_CHAR('2014/01/25', 'YYYY/MM/DD')
날짜의 덧셈
날짜를 연산해 시스템 날짜(sysdate)의 1일 후를 검색
SELECT CURRENT_DATE + INTERVAL 1 DAY;
날짜의 뺄셈
- 두 날짜 사이에 차이를 얼마나 발생하는지 계산 가능
[Oracle]
'2014-02-28' - '2014-01-01'
[MySQL]
DATAEDIFF('2014-02-28', '2014-01-01')
출처 : SQL 첫걸음 아사이 아츠시 지음 [한빛미디어]