+ || CONCAT SUBSTRING TRIM CHARACTER_LENGTH
'ABC' || '1234' -> 'ABC1234'
데이터베이스 제품마다 방언이 있다.
연산자/함수 | 연산 | 데이터베이스 |
---|---|---|
+ | 문자열 결합 | SQL server |
ㅣㅣ | 문자열 결합 | Oracle, DB2, PostgreSQL |
CONCAT | 문자열 결합 | MySQL |
+연산자, || 연산자, CONCAT 함수로 문자열 결합
문자열 결합은 2개의 열 데이터를 모아서 1개의 열로 처리하고 싶은
경우에 자주 사용한다.
문자열 결합으로 단위를 연결해 결과 읽기
SELECT CONCAT(quantity, unit) FROM sample35;
문자열 결합이지만 수치 데이터도 연산할 수 있다. 단, 문자열로 결합한 결과는 문자열형이 된다.
SUBSTRING 함수는 문자열의 일부분을 계산해서 반환해주는 함수이다. (SUBSTR)
TRIM 함수는 문자열의 앞뒤로 여분의 스페이스가 있을 경우 이를 제거해주는 함수로 문자열 도중에 존재하는 스페이스는 제거되지 않는다.
인수 지정으로 스페이스 이외의 문자 제거 가능
TRIM('ABC ') -> 'ABC'
CHARACTER_LENGTH 함수는 문자열의 길이를 계산해 돌려주는 함수이다. 문자단위로 계산되어 수치로 반환된다. (CHAR_LENGTH)
OCTET_LENGTH 함수는 문자열의 길이를 바이트 단위로 계산해 돌려주는 함수이다.
한문자가 몇 바이트인지는 쓰이는 문자세트에 따라 다르다
EUC-KR에서 ASCII 문자는 1바이트, 한글은 2바이트의 용량을 가진다.
UTF-8에서 ASCII 문자는 1바이트, 한글은 3바이트의 용량을 가진다.
문자세트에 따라 한 문자의 크기는 달라진다.
문자열 데이터의 길이는 문자세트에 따라 다르다.