문제 061)
오늘부터 100달뒤 돌아올 금요일의 날짜를 출력하시오.
select next_day((ADD_MONTHS(sysdate,100)),'금요일') from emp;
문제 062)
이번달 말일의 날짜를 출력하시오.
select last_day(sysdate) from emp;
문제 063)
오늘부터 요번달 말일까지 총 몇일남았는지 출력하시오.
※ 데이터 타입을 변환하는 함수
1. 문자로 형변환 :to_char
2. 숫자로 형변환 :to_number
3. 날짜로 형변환 :to_date
문제 064)
오늘이 무슨 요일인지 출력하시오.
select to_char(sysdate,'day') from emp;
문제 065)
이름, 입사한 요일을 출력하시오.
select ename, to_char(hiredate,'day') from emp;
- 설명
날짜 포멧스트링(기초1의 볼륨1 4-12)
요일 : day, dy
년도 : YYYY, YY, RRRR, RR, year
달 : mm, mon, month
일 : dd
주 : ww, w, iw
시간 : hh, hh24
분 : mi
초 : ss
문제 066)
오늘부터 200달 뒤에 돌아오는 날짜의 요일을 출력하시오.
select to_char(add_months(sysdate,200),'day') from emp;
문제 067)
이름과 입사한 년도를 출력하시오.
select ename, to_char(hiredate,'yyyy') from emp;
문제 068)
1981년도에 입사한 사원들의 이름과 입사일을 출력하시오.
select ename, hiredate from emp
where hiredate like '81/__/__';
문제 069)
목요일에 입사한 사원들의 이름과 입사일, 입사한 요일을 출력하시오.
select ename, hiredate, to_char(hiredate,'day') from emp;
- 설명
trim은 DB에 뜻하지 않게 공백이 들어가서 적용한 함수
문제 070)
81년 12월 11일에 입사한 사원의 이름과 입사일을 출력하시오.
select ename,hiredate from emp
where hiredate like '81/12/11';
문제 071)
이름과 월급을 출력하는데 월급에 천단위를 부여하시오! (예: 3000 -> 3,000)
select ename, to_char(sal, '999,999') from emp;
문제 072)
이름과 월급 * 5400을 출력하는데, 천단위와백만단위를 출력하시오.
select ename, to_char(sal*5400,'999,999,999') from emp;
- 설명
일반함수
1. nvl
2. decode
3. case
문제 073)
이름과 커미션을 출력하는데 커미션이 null인 사원들은 0으로 출력하시오.
select ename,NVL(comm,0) from emp;
- 설명
nvl 함수는 argument 양쪽의 데이터 타입을 맞춰야 한다.
문제 074)
이름과 커미션을 출력하는데 커미션이 null인 사원들은 no comm 이란 글씨로 출력하시오.
select ename,NVL(to_char(comm), 'no comm') from emp;
이상입니다 ✍(◔◡◔)
'코딩 공부 > SQL' 카테고리의 다른 글
DataBase - ON DELETE CASCADE 이해하기 (0) | 2023.05.14 |
---|---|
ORACLE 문제 풀이[3] (0) | 2023.05.10 |
ORACLE 문제 풀이[2] (0) | 2023.05.09 |
ORACLE 문제 풀이[1] (0) | 2023.05.08 |
SQL 초기 설정 (Oracle) (0) | 2023.04.12 |