단일행 함수 : 문자함수, 숫자함수, 날짜함수, 형변환 함수, 일반함수
- 말그대로 단일값(하나의값)만 리턴하는 함수
1. 문자 함수
1) uper : 대문자로 변환하는 함수
2) lower : 소문자로 변환하는 함수
3) initcap : 첫글자 대문자 나머지는 소문자로 변환하는 함수 / 인수값(' ')은 하나만 사용해야함
select upper(last_name), lower(last_name), initcap(last_name)
from employees;
4) concat : 연결연산자(||)와 동일한 함수 / 인수값(' ')은 두개만 사용해야함
(리터럴문자 사용 못함)
select last_name || first_name, concat(last_name, first_name)
from employees;
5) length : 문자의 길이를 숫자값으로 표현하는 함수
6) lengthb : 문자의 바이트(byte)값으로 표현하는 함수
(CHARACTERSET의 영향을 받는다.)
select last_name, length(last_name)
from employees;
7) instr : 문자의 위치를 리턴하는 함수 / 글자가 있는지 없는지 찾을때 좋음
instr(찾으려는 컬럼, 찾고자 하는 문자, 시작부분, 몇번째 나오는 문자를 찾을지)
select last_name, instr(last_name, 'a', 1, 1)
from employees;
select instr('aabaabccb','b',1,1)
from dual;
8) substr : 문자를 갯수만큼 추출하는 함수
substr(뽑으려는 컬럼, 뽑을 글자 위치, 몇개 뽑을지)
select last_name, substr(last_name, 1, 2), substr(last_name, -1, 1)
from employees;
select substr('가나다라마',1,2)
from dual;
9) substrb : 문자를 바이트 값만큼 추출하는 함수 / 글자의 맨뒷자리를 알고 싶으면 -1을 쓰면됨
substrb(문자열, 시작위치, 길이)
select substrb('가나다라마',1,6)
from dual;
10) trim : 연속되는 글자의 접두, 접미 문자를 자르는 함수 / 연속되는 공백문자를 찾아서 제거
select trim('a' from 'aaabbcaa'), trim(' ' from ' bbc ')
from dual;
11) ltrim : 접두를 자르는 함수
12) rtrim : 접미를 자르는 함수
select ltrim('aabbcaa','a'), rtrim('aabbcaa','a')
from dual;
13) replace : 문자를 치환하는 함수
select replace('100-001','0','*')
from dual;
14) lpad: 문자의 자리를 고정시킨후 문자값을 오른쪽을 기준으로 채우고
빈 왼쪽의 공백을 다른 값으로 채우는 함수
15) rpad: 문자의 자리를 고정시킨후 문자값을 왼쪽을 기준으로 채우고
빈 오른쪽의 공백을 다른 값으로 채우는 함수
salary가 숫자로 되어있으니까 가능(오버로드 기능)
select lpad('abcd', 10, '*')
from employees;
select rpad(salary, 10, '*')
from employees;
'컴퓨터 > SQL' 카테고리의 다른 글
오라클 SQL 함수 정리 - ③ 날짜 함수, ④ 형변환 함수 (0) | 2020.01.28 |
---|---|
오라클 SQL 함수 정리 - ② 숫자 함수 (0) | 2020.01.28 |
트랜잭션 (0) | 2020.01.22 |
데이터 삽입과 변경 (0) | 2020.01.22 |
데이터 검색 (0) | 2020.01.21 |