[DB/Oracle] 단일행 함수 - 문자 함수편
함수 | 설명 |
단일 행 함수 | 단일 행을 입력 받아 단일 행을 반환하는 함수 |
집계 함수 | 다중 행을 입력받아 단일 행을 반환하는 함수 |
분석 함수 | 다중 행을 입력받아 다중 행을 반환하는 함수 |
모델 함수 | MODEL절에서 사용하는 함수 |
함수 | 설명 |
문자 함수 | 문자값을 조작하는 함수 |
숫자 함수 | 숫자 값을 조작하는 함수 |
날짜 함수 | 날짜 값을 조작하는 함수 |
변환 함수 | 값의 데이터 타입을 변환하는 함수 |
널 관련 함수 | 널을 조작하는 함수 |
비교 함수 | 값을 비교하는 함수 |
인코딩 디코딩 함수 | 값을 조사하거나 디코딩 하는 함수 |
환경 식별자 함수 | 인스턴스와 세션에 대한 정보를 제공하는 함수 |
계층 함수 | 계층 쿼리에서 사용하는 함수 |
컬렉션 함수 | 컬렉션 값을 조작하는 함수 |
xml 함수 | xml 값을 조작하는 함수 |
JSON 함수 | JSON 값을 조작하는 함수 |
1. 문자 함수
1) CHR(n) : n에 해당하는 데이터베이스 캐릭터 셋의 문자값을 반환한다.
2) LOWER(str) : str을 모두 소문자로 바꿔서 출력한다
3)UPPER(str) : str을 모두 대문자로 변경한다
4) INITCAP(char) : 첫글자는 대문자, 나머지는 소문자로 표현
5) L(R)PAD( 문자, 숫자, [반복 문자]) : [반복문자] 는 선택이며, 문자의 왼쪽방향으로 숫자만큼의 공간을 만들고 [반복문자]를 생성한 공간만큼 반복한다.
6) [ L(R) ]TRIM(char, [set]) : 왼쪽 또는 오른쪽에서 부터 char의 문자열중 set의 단어를 제거한다. set에 포함되지 않은 문자를 만나면 종료된다. set 의 DEFAULT 값은 ''(공백) 이다.
- trim은 주로 양측의 공백을 제거하기 위해 사용한다.
7) substr(char, 숫자(위치), [갯수]) : char를 숫자(위치) 부터 끝까지 나타낸다, 또는 위치부터 갯수만큼 나타낸다.
8) replace( char, search_string, [Replace_String]) : char 에서 serarch_String을 찾아 replace_string 으로 교환하는데
replace_String 이 표기 되지 않았으면 NULL로 치환한다.
중복 replace의 정규표현식 REGEXP_REPLACE( char, (search_String1|search_String2 등...), [replace_String])
search_String 옵션으로 아래와 같은 문자를 넣으면 아래와 같이 된다.
'[[:punct:]]' -->특수문자 제거
'[^[:digit:]]' --> 모든 문자 제거(숫자만 남김)
= 이 외 다른 것들을 확인 하려면 ORACLE 정규표현식을 검색해 보면 된다.
9) TRANSLATE( char, from_String, to_String) : char와 일치하는 from_String문자를 대응하는 위치의 to_String문자로 변환한다. from_String 문자와 일치하지 않는 문자는 변환하지 않는다.
10) ASCII(char) : char 첫문자의 아스키 값을 십진수로 반환한다.
11. instr(string, substring, [position], [occuurence]) : string에서 substring의 시작위치를 반환하는 함수로
position이 있다면 String의 position시작위치에서부터 오른쪽으로 substring의 시작위치를 반환하는 것이고
occurrence가 있다면 occurrence 번째의 substring 문자의 시작 위치를 반환한다.
즉 ab가 substring이라면 occurrence가 2라면 두번째 ab의 시작위치를 반환한다는 것이다.
12. LENGTH(char) : char의 문자열 길이를 리턴해준다.