1) initcap
: 첫문자만 대문자로 변환
initcap(‘abcd’) -> Abcd
//문자열 중간에 공백이 있는 경우, 단어의 시작부분이 대문자로 바뀐다.
2) upper
: 대문자로 변환
upper(‘abcd’) ->ABCD
3) lower
: 소문자로 변환
lower(‘ABCD’) -> abcd
예시 :
1. 학과번호1이 101학과 학생의이름,id를 출력하기.
id는 첫문자만 대문자로, 전부 대문자로, 전부 소문자로 출력하기.
select name,id,initcap(id),upper(id),lower(id) from student where deptno1 = 101;
예시 :
2. emp테이블에서 사원의 이름이 smith인 사원의 이름,급여,부서코드 조회하기.
smith 이름은 대소문자 상관없이 조회되도록 함.
select ename,sal,deptno from emp where lower(ename) = lower('smith');
문제 :
1. 학생 중 id 값에 M문자를 가지고 있는 학생의 이름,id,학과번호1을 조회하기.
단 id의 내용은 대소문자 상관없이 조회되도록 함.
select name,id,deptno1 from student where id like '%m%' or '%M%';
select name,id,deptno1 from student where lower(id) like '%m%';
select name,id,deptno1 from student where upper(id) like '%M%';
select name,id,deptno1 from student where upper(id) like upper('%M%');
- 명확한 답은 없다. 응용해서 만들면 된다.
'수업(국비지원) > Oracle' 카테고리의 다른 글
| [Oracle] SQL 단일행 함수 - 문자 함수(문자 추가,제거 함수) lpad, rpad, ltrim, rtrim, trim (0) | 2023.04.14 |
|---|---|
| [Oracle] SQL 단일행 함수 - 문자 함수(문자열의 길이) length, lengthb, substr, instr (0) | 2023.04.14 |
| [Oracle] 합집합 union (0) | 2023.04.13 |
| [Oracle] order by 구문 (0) | 2023.04.13 |
| [Oracle] Null (0) | 2023.04.13 |