SQL) oracle_single 함수 문자열


한 줄 함수 – 문자열 함수
; 프로그래머는 복잡한 SQL 문을 이해해야 합니다.

오라클에서 제공하는 기능을 모르더라도 쉽게 사용할 수 있습니다.

하지만 SQL 문을 잘 이해해야 하는 이유가 있습니다


1) 프로그램에서 데이터를 처리하는 대신
DBMS에서 처리하고 결과만 받아
훨씬 성능이 좋아


2) 아키텍처 관점에서 프로그램은 받은 결과를 반환합니다.

데이터를 표시하는 데 중점을 두며 DBMS는 데이터를 저장/처리합니다.

이것에 초점을 맞추면 둘 사이의 적절한 역할 분리가 이루어질 것입니다.

이것은 유연성을 증가시킵니다
(프로그램과 DBMS가 느슨하게 연결되어 있기 때문에 개조/유지보수에 좋음)

그리기 기능
LOWER는 문자열을 소문자로 변환합니다.

UPPER 문자열을 대문자로 변환
INITCAP 첫 글자는 대문자, 나머지는 소문자

–1) ERP 부서가 위치한 지역 찾기

loc, dname 선택
부서에서
WHERE dname=”ERP”;

loc, dname 선택
부서에서
WHERE dname=”erp”;

loc, dname 선택
부서에서
WHERE LOWER(dname)=’erp’;

loc, dname 선택
부서에서
WHERE UPPER(dname)=’ERP’;

loc, dname 선택
부서에서
WHERE INITCAP(dname)=’Erp’;

그리기 작업 기능
SUBSTR 문자열 내의 지정된 위치에 있는 문자열을 반환합니다(문자열, 위치, 개수).
SUBSTR(‘오라클’, 1, 2) => 또는

LENGTH는 문자열의 길이를 반환합니다.

길이(‘오라클’) => 6

INSTR은 지정된 문자의 위치를 ​​반환합니다.

INSTR(‘오라클’, ‘a’) => 3

TRIM은 접두사 또는 접미사를 자릅니다.

TRIM(‘o’ FROM ‘oracle’) => 딸랑이

LPAD, RPAD 빈 부분에 지정된 문자열만큼
텍스트를 채우십시오
LPAD(‘20000’, 10, ‘*’)
=> *****20000

CONCAT(‘김’, ‘유나’) => 김연아

2) 부서명과 위치를 하나의 컬럼으로 검색
–CONCAT는 문자열을 연결하는 함수입니다.

– 잘 사용하지 마세요
–왜냐하면 || 더 많이 사용

SELECT CONCAT(dname, ‘ ‘||위치)
OF 부서;

SELECT dname||’ ‘||위치
OF 부서;

3) 부서명과 길이를 정자로 기입

SELECT dno, dname, LENGTH(dname) 이름 길이
OF 부서;

4) SUBSTR 함수를 사용하여 열의 일부만 검색

SELECT ename, SUBSTR(ename, 2),– 두 번째 문자부터
SUBSTR(ename, -2),– 끝에서 두 번째 글자부터
SUBSTR(ename, 1, 2),– 첫 문자부터 2문자
SUBSTR(ename, -2, 2)– 끝에서 2번째 문자부터 2문자
에서 emp;

5) 사원명에서 ‘a’가 나오는 위치를 반환

SELECT INSTR(‘데이터베이스’, ‘a’),– 처음부터
INSTR(‘데이터베이스’, ‘a’, 3),– 3 이후
INSTR(‘database’, ‘a’, 1, 3)– a에서 1까지 세 번째로 보이는 위치
이중에서;

6) TRIM 기능을 이용하여 다양한 방법으로 문자열 검색

SELECT TRIM(‘남기남’에서 ‘남’),
트림(‘남기남’의 ‘남’을 리드),
TRIM(‘남기남’의 접미사 ‘남’),
TRIM(‘남남남기남남’의 ‘남성’)
이중에서;

SELECT TRIM(‘이남남’)
이중에서;

TRIM은 주로 공백을 제거하는 데 사용됩니다.

타이핑할 때 ‘홍길동’ 그렇게 쓰지 마세요
‘홍길동’, ‘홍길동’이 들어가는 경우가 있다.

이때 ename=”홍길동”;
TRIM(ename)=’홍길동’은 선행 및 후행 공백을 자릅니다.

7) 이름과 급여를 각각 10컬럼씩 검색

SELECT RPAD(ename, 10, ‘*’), LPAD(sal, 10, ‘*’)
에서 emp;

8) 부서명의 마지막 글자로 검색
SELECT dname, SUBSTR(dname, 1, LENGTH(dname)-1) dname
OF 부서;

–문자 교체 기능
–TRANSLATE: 문자별 교체를 반환합니다.

— TRANSLATE(‘오라클’, ‘o’, ‘#’)
— => #레이스
–REPLACE: 문자열 단위로 교체된 값을 반환합니다.

— REPLACE(‘오라클’, ‘또는’, ‘##’)
— => ##아켈

— REPLACE를 더 많이 사용

SELECT TRANSLATE(‘월드 오브 워크래프트’, ‘어디’, ‘-*’) 번역,
REPLACE(‘월드 오브 워크래프트’, ‘위치’, ‘–‘) 바꾸기
이중에서;