Oracle DB ( 오라클 함수 - 문자열 )
개발/K-DigitalTraining 수강중2023. 3. 20. 17:51
728x90
반응형
-- 오라클 함수
-- 오라클에서 기본으로 제공하는 내장 함수 , 사용자가 필요에 의해 직접 정의한 사용자 정의 함수
-- 문자열 함수
-- 1.UPPER , LOWER , INITCAP
--UPPER 는 모두 대분자 , LOWER는 모두 소문자 , INITCAP 첫글자만 대문자
SELECT
ENAME ,
UPPER(ENAME) ,
LOWER(ENAME) ,
INITCAP(ENAME)
FROM
EMP;
--2.LENGTH : 문자열 길이
SELECT
ENAME, LENGTH(ENAME)
FROM
EMP;
-- 사원 이름의 길이가 5 이상인 사원 조회
SELECT ENAME
FROM EMP
WHERE LENGTH(ENAME) >= 5;
--한글일 때
SELECT LENGTH('훈민정음')
FROM DUAL; -- SYS가 소유하는 테이블 ( 임시 연산이나 함수의 결과 값 확인 용도 )
--LENGTHB BYTE단위로 세어줌
SELECT LENGTHB('한글')
FROM DUAL;
--3. SUBSTR(문자열 데이터 , 시작위치 , 추출길이) : 추출길이 생략 가능
-- 문자열 일부 추출
SELECT JOB, SUBSTR(JOB, -3)
FROM EMP ;
-- ENAME 출력 세번째 글자부터 출력
SELECT SUBSTR(ENAME,3)
FROM EMP;
--4.INSTR : 문자열 데이터 안에서 특정 문자 위치 찾기
--INSTR(대상문자열 , 위치를 찾으려는 문자열 , 대상문자열에서 찾기를 시작할 위치(선택사항),시작위치에서 찾으려는 문자가 몇번째인지 지정)
SELECT
INSTR( 'HELLO, ORACLE' , 'L') AS INSTR_1 ,
INSTR('HELLO, ORACLE', 'L', 2 , 2) AS INSTR_2
FROM DUAL;
--5. REPLACE : 특정 문자를 다른 문자로 변경
-- REPLACE(문자열데이터 , 찾는문자 , 변경문자 )
SELECT '010-1234-5678' AS 변경전 , REPLACE('010-1234-5678' , '-', ' ')AS 변경후
FROM DUAL;
SELECT ' 이것이 ORACLE 이다 ' AS 변경전 , REPLACE(' 이것이 ORACLE 이다' , '이것이', 'THIS IS') AS 변경후
FROM DUAL;
-- 6.CONCAT : 두 문자열 데이터 합치기
SELECT CONCAT(EMPNO , ENAME)
FROM EMP;
-- || : 문자열 연결 연산자
-- 7. TRIM , LTRIM , RTRIM : 공백 포함 특정 문자 제거
728x90
반응형
'개발 > K-DigitalTraining 수강중' 카테고리의 다른 글
Oracle DB ( 오라클 함수- 형변환 함수 ) (1) | 2023.03.21 |
---|---|
Oracle DB ( 오라클 함수 - 숫자 , 날짜 ) (0) | 2023.03.21 |
Oracle DB 연습문제 (0) | 2023.03.20 |
Oracle DB ( is null , 집합연산) (0) | 2023.03.20 |
Oracle DB ( Like 연산자와, 와일드 카드) (0) | 2023.03.20 |
댓글()