ORACLE 내장함수 1. 문자열함수
아래는 모두 단일행(Single row return) 함수다.
문자열 내장함수 표
함수명 |
인자(입력값) |
리턴값 |
LOWER |
문자열 |
입력값을 소문자로 반환 |
UPPER |
문자열 |
입력값을 대문자로 반환 |
INITCAP |
문자열 |
입력값의 첫문자를 대문자로, 나머지는 소문자로 반환 |
LPAD |
문자열1, n[문자열 2] |
문자열1의 좌측에 문자열2의 문자를 채워 n자리로 만들어서 리턴 |
RPAD |
문자열1, n[문자열 2] |
문자열 1의 우측에 문자열2의 문자를 채워 n 자리를 만들어서 리턴 |
SUBSTR |
문자열, n[,m] |
문자열의 n번째 문자부터 m개의 문자를 리턴 |
INSTR |
문자열1, 문자2 |
문자열1 에서 문자2가 나오는 최초의 위치를 리턴 |
LTRIM |
문자열 [.SET] |
문자열의 좌측부터 시작해서 SET문자열이 안나올때까지 문자를 삭제 |
RTRIM |
문자열 [.SET] |
문자열의 우측부터 시작해서 SET문자열이 안나올때까지 문자를 삭제 |
SOUNDEX |
문자열 |
지정한 단어와 발음이 동일한 문자열을 리턴 |
TRANSLATE |
문자열, S1, S2 |
모든 S1을 S2로 치환 한 후 리턴 |
CHR |
문자열 |
지정된수치와 일치하는 ASCII 코드를 리턴 |
ASCII |
문자열 |
지정된 문자의 ASCII 코드값을 리턴 |
REPLACE | 문자열, STR1, STR2 | 문자열에서 STR1을 모두 STR2로 치환후 리턴, STR2를 입력하지 않으면 문자열에서 STR1을 모두 삭제 |
CONCAT | 문자열1, 문자열2 | 문자열1과 문자열 2를 합쳐서 리턴한다. |
TRIM | LEADING / TRAILING/ BOTH 혹은 트림할 문자열 + FROM 원문자열 | trim(LEADING 트림할문자열 FROM 원본문자열 ) : 문장의 앞에서 트림할 문자열 제거 trim(TRAILING 트림할문자열 FROM 원본문자열 ) : 문장의 위에서 트림 trim(BOTH 트림할문자열 FROM 원본문자열) : 양쪽에서 다 트림 TRIM(원본문자열) : 앞 뒤 공백을 제거 TRIM() : null 을 반환 |
LENGTH | 문자열 | 입력한 캐릭터셋으로 계산한 문자열의 길이를 반환 바이트를 반환 하고 싶으면 LENGTHB를 사용 |
1. lower 함수
SQL> select lower('HELLO WORLD') from dual; LOWER('HELL ----------- hello world SQL> |
2. upper 함수
SQL> select upper('hello world') from dual; UPPER('HELL ----------- HELLO WORLD SQL>
|
3. initcap 함수
SQL> select initcap('hello WORLD') from dual; INITCAP('HE ----------- Hello World SQL>
|
4. LPAD 함수
SQL> select lpad('hello world',3) from dual; LPA --- hel SQL> SQL> select lpad('hello world',166,'o') from dual; LPAD('HELLOWORLD',166,'O') -------------------------------------------------------------------------------- oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooohello world 만약 숫자 1, 2 나오는 컬럼이 있는데 이를 6자리로 000001 이렇게 채워야 할때 사용 SQL> select lpad('1',6,'0') from dual; LPAD(' ------ 000001 SQL> SQL> select lpad('133',6,'0') from dual; LPAD(' ------ 000133 SQL> 이런식으로 6자리로 채워준다. |
5. RPAD 함수
LPAD와는 반대로 우측에 자릿수 채우기 위해서 사용 SQL> select rpad('1',6,'*') from dual; RPAD(' ------ 1***** SQL> 전체 출력하는 개수는 가운데 6의 숫자로 결정 나머지는 기존문자가 자릿수보다 크면 자릿수만큼만 기존문자를 출력 기존문자가 자릿수보다 작으면 작은 부분만큼 변형문자로 채워줌 |
6. substr 함수
SQL> select substr('Hello World',3) from dual; SUBSTR('H --------- llo World SQL> 문자를 특정 인덱스 부터 시작해서 출력해줌 시작인덱스만 지정하면 시작부터 끝까지 종료인덱스를 지정하면 시작부터 종료까지 SQL> select substr('Hello World',3,5) from dual; SUBST ----- llo W SQL>
|
7.instr 함수
SQL> select INSTR('Hello World','h') from dual; INSTR('HELLOWORLD','H') ----------------------- 0 SQL> select INSTR('Hello World','Hello') from dual; INSTR('HELLOWORLD','HELLO') --------------------------- 1 SQL> select INSTR('Hello World','llo') from dual; INSTR('HELLOWORLD','LLO') ------------------------- 3 SQL>
|
'oracle > sql' 카테고리의 다른 글
oracle vo, DAO, DTO 생성 스크립트 v3 (0) | 2018.12.06 |
---|