SQL 함수 1 (문자 함수)

2022. 6. 29. 16:57CS/데이터 베이스

단일 행 함수 : 하나의 행에 적용하는 함수

복수 행 함수 : 여러 행에 적용하는 함수

 

단일행 함수 데이터 값 조작. 타입 변환. 등

 

 

문자 함수

문자 함수 : 문자 데이터를 입력. 문자나 숫자를 결과로 반환.

대소문자 변환, 문자조작, 문자열 길이반환.

 

INITCAP : 첫 문자를 대문자 반환

LOWER : 전체 문자를 소문자로 반환

UPPER : 전체 문자를 대문자로 반환

- adams라는 사원이 있으면 사번, 이름, 직업, 부서번호를 출력하세요.

문자열 길이 반환 함수

LENGTH : 문자열의 길이를 반환

LENGTHB : 문자열의 길이를 바이트 수로 반환.

여기서 잠깐! 캐릭터셋에 따라 바이트수가 다르다.

KO16KSC5601 : 한글 완성형 글자당 2Byte

AL32UTF8 : 글자당 3Byte

 

- j, a, m으로 시작하는 사원들 중 첫글자를 대문자를 이름, 이름의 길이를 출력하라

 

문자 조작 함수

 

CONCAT : 두 문자열을 결합, '||'와 동일.

SUBSTR : 특정 문자 또는 문자열 일부를 추출 (매우 중요)

 

- 학생 테이블에서 1학년 학생의 주민등록 번호에서 생년월일과 태어난 달을 추출하여 이름, 주민번호, 생년월일, 태어난 달을 출력하여라

- 학생 테이블에서 1학년 남자 학생의 주민등록 번호에서 생년월일과 태어난 달을 추출하여 이름, 주민번호, 생년월일, 태어난 달을 출력하여라

- j, a, m으로 시작하는 사원들 중 첫글자를 대문자를 이름, 이름의 길이를 출력하라

INSTR : 특정 문자가 출현하는 위치 반환 

부서 테이블에서 '과'가 들은 위치를 반환하시오

LPAD : 오른쪽 정렬 후 왼쪽으로 지정문자를 삽입

RPAD : 왼쪽 정렬 후 오른쪽으로 지정 문자를 삽입

- 교수테이블에서 직급 칼럼의 왼쪽에 '*'문자를 삽입하여 10바이트로 출력하고 교수 아이디 칼럼은 오른쪽에 +문자를 삽입하여 12바이트로 출력하여라

LTRIM : 왼쪽부터 지정 문자를 삭제

RTRIM : 오른쪽부터 지정 문자를 삭제

'xy'는 x나 y를 만나면 삭제하겠다는 것.

 

- 부서 테이블에서 부서 이름의 마지막 글자인 '과'를 삭제하여 출력하여라

 

예시

 

1. 사원테이블에서 사원명 칼럼의 별명은 Name, 급여*12는
Annual Salary로 부여하여 출력해 보세요. (아래와 같이 나오도록)
Name Annual Salary
---------- -------------
SMITH 9600
ALLEN 19200
WARD 15000


2. 사원테이블의 사원명과 급여를 아래와 같은 포맷으로 출력해 보세요.
MONTHLY
--------------------------------------
SMITH: 1 Month salary = 800
ALLEN: 1 Month salary = 1600
WARD: 1 Month salary = 1250


3. 사원테이블에서 급여가 $1,500 ~ $5,000이고 직무가 PRESIDENT나 ANALYST가
아닌 모든 사원에 대해 사번, 이름, 직무, 급여를 직무,급여의 오름차순으로 정렬 하세요.
(아래와 같이 나오도록)

EMPNO ENAME JOB SAL
-------- ---------- --------- ----------
7782 CLARK MANAGER 2450
7698 BLAKE MANAGER 2850
7566 JONES MANAGER 2975
7844 TURNER SALESMAN 1500
7499 ALLEN SALESMAN 1600


4. 사원 테이블에서 2월에 입사한 사원을 출력해 보세요.(substr 사용)


5. 사원 테이블에서 20이나 30번 부서에 속하고
이름의 마지막 글자에 'S'자를 포함한 사원들 중에서
마지막 'S'를 제거해 보세요.

ENAME RTRIM
-------------------- --------------------
JONES JONE
ADAMS ADAM
JAMES JAME

반응형