K 개발자

문자 함수 본문

데이터베이스/Oracle SQL

문자 함수

ddingz 2021. 8. 23. 22:21

문자 함수

문자 함수character functions는 주로 CHAR나 VARCHAR2 데이터 타입을 대상으로 단일 문자나 문자열을 가공한 결과를 반환한다.
문자 함수는 다음과 같이 다양하게 제공되고 있으므로 목적에 맞게 골라서 사용한다.

함수 설명
CHR(k) 정수 아스키코드를 문자로 반환
CONCAT(s1, s2) 두 문자열을 연결
INITCAP(s) 문자열의 첫 번째 알파벳을 대문자로 변환
LOWER(s) 대상 문자열을 모두 소문자로 변환
LPAD(s, n, c) 대상 문자열의 왼쪽부터 지정한 자릿수까지 지정한 문자로 채움
LTRIM(s1, s2) 대상 문자열의 왼쪽부터 지정한 문자들을 제거
REPLACE(s1, s2, s3) 대상 문자열의 지정한 문자를 원하는 문자로 변경
RPAD(s, n, c) 대상 문자열의 오른쪽부터 지정한 자릿수까지 지정한 문자로 채움
RTRIM(s1, s2) 대상 문자열의 오른쪽부터 지정한 문자들을 제거
SUBSTR(s, n, k) 대상 문자열의 지정된 자리에서부터 지정된 길이만큼 잘라서 반환
TRIM(c FROM s) 대상 문자열의 양쪽에서 지정된 문자를 삭제(문자열만 넣으면 기본값으로 공백 제거)
UPPER(s) 대상 문자열을 모두 대문자로 변환
ASCII(c) 대상 알파벳 문자의 아스키코드 값을 반환
INSTR(s1, s2, n, k) 문자열 중 n번째 문자부터 시작하여 찾고자 하는 문자열 s2가 k번째 나타나는 문자열 위치 반환
LENGTH(s) 대상 문자열의 글자 수를 반환

연습문제

-- 도서 제목에 '야구'가 포함된 도서를 '농구'로 변경한 후 도서 목록을 보이시오.
SELECT bookid, REPLACE(bookname, '야구', '농구') bookname, publisher, price
FROM Book;
-- '굿스포츠'에서 출판한 도서의 제목과 제목의 글자 수, 바이트 수를 보이시오.
SELECT bookname "제목", LENGTH(bookname) "글자수", LENGTHB(bookname) "바이트수"
FROM Book
WHERE publisher = '굿스포츠';
-- 마당서점의 고객 중에서 같은 성(姓)을 가진 사람이 몇 명이나 되는지 성별 인원수를 구하시오.
SELECT SUBSTR(name, 1, 1) "성", COUNT(*) "인원"
FROM Customer
GROUP BY SUBSTR(name, 1, 1);

'데이터베이스 > Oracle SQL' 카테고리의 다른 글

NULL 값 처리  (0) 2021.08.24
날짜·시간 함수  (0) 2021.08.24
숫자 함수  (0) 2021.08.23
데이터 조작어  (0) 2021.08.23
데이터 정의어  (0) 2021.08.23
Comments