Oracle Database
문자열 조작
수색…
연결 : 운영자 || 또는 concat () 함수
Oracle SQL 및 PL / SQL ||
연산자를 사용하면 둘 이상의 문자열을 연결할 수 있습니다.
예:
다음 customers
테이블을 가정합니다.
id firstname lastname
--- ----------- ----------
1 Thomas Woody
질문:
SELECT firstname || ' ' || lastname || ' is in my database.' as "My Sentence"
FROM customers;
산출:
My Sentence
---------------------------------
Thomas Woody is in my database.
Oracle은 표준 SQL CONCAT(str1, str2)
함수도 지원합니다.
예:
질문:
SELECT CONCAT(firstname, ' is in my database.') from customers;
산출:
Expr1
---------------------------------
Thomas is in my database.
높은
UPPER 함수를 사용하면 문자열의 모든 소문자를 대문자로 변환 할 수 있습니다.
SELECT UPPER('My text 123!') AS result FROM dual;
산출:
RESULT
------------
MY TEXT 123!
INITCAP
INITCAP
함수는 각 단어가 대문자로 시작하고 모든 후속 문자가 소문자가되도록 문자열의 대 / 소문자를 변환합니다.
SELECT INITCAP('HELLO mr macdonald!') AS NEW FROM dual;
산출
NEW
-------------------
Hello Mr Macdonald!
보다 낮은
LOWER는 문자열의 모든 대문자를 소문자로 변환합니다.
SELECT LOWER('HELLO World123!') text FROM dual;
출력 :
본문 |
---|
안녕 세상 121! |
정규식
숫자 만 2 자리로 바꾸고 싶다고 가정 해 봅시다 : 정규 표현식은 (\d\d)
SELECT REGEXP_REPLACE ('2, 5, and 10 are numbers in this example', '(\d\d)', '#')
FROM dual;
결과 :
'2, 5, and # are numbers in this example'
텍스트의 일부를 바꾸려면 \1
, \2
, \3
을 사용하여 일치하는 문자열을 호출하십시오.
SELECT REGEXP_REPLACE ('swap around 10 in that one ', '(.*)(\d\d )(.*)', '\3\2\1\3')
FROM dual;
SUBSTR
SUBSTR
추출 할 시작 위치와 문자 수를 표시하여 문자열의 일부를 검색합니다.
SELECT SUBSTR('abcdefg',2,3) FROM DUAL;
보고:
bcd
문자열의 끝에서부터 계산하기 위해 SUBSTR
은 음수를 두 번째 매개 변수로 받아들입니다.
SELECT SUBSTR('abcdefg',-4,2) FROM DUAL;
보고:
de
문자열의 마지막 문자를 얻으려면 : SUBSTR(mystring,-1,1)
LTRIM / RTRIM
LTRIM
및 RTRIM
은 문자열의 처음 또는 끝에서 문자를 제거합니다. 제거 할 하나 이상의 문자 집합을 제공 할 수 있습니다 (기본값은 공백 임).
예를 들어,
select LTRIM('<===>HELLO<===>', '=<>')
,RTRIM('<===>HELLO<===>', '=<>')
from dual;
보고:
HELLO<===>
<===>HELLO
Modified text is an extract of the original Stack Overflow Documentation
아래 라이선스 CC BY-SA 3.0
와 제휴하지 않음 Stack Overflow