--1. 각 과목의 학점수와 담당교수 번호를 검색한다
SELECT st_num, pno
FROM course;
--2. 각 학생들이 속한 학과와 학년을 검색한다
SELECT major, syear, sname
FROM student;
--3. 모든 학생의 평균 평점을 검색한다
SELECT sno, sname, avr
FROM student;
--4. 학생들의 성별을 검색한다.
SELECT sno, sname, sex
FROM student;
--5. 각 학생의 평점을 검색한다
SELECT sno, sname, avr
FROM student;
--6. 각 과목의 학점수는 검색한다
SELECT st_num, cname
FROM course;
--7. 각 교수의 지위를 검색한다
SELECT pname, orders
FROM professor;
--8. 급여가 10% 인상될 경우 각 사원의 연봉을 검색한다
SELECT eno, ename, (sal+(sal*0.1))*12+NVL(comm,0) 인상연봉
FROM emp;
--9. 1년 동안 지급되는 급여와 10% 인상되어 1년 동안 지급되는 급여 간에 차액을 검색한다
SELECT (sal+(sal*0.1))*12+NVL(comm,0)-sal*12+NVL(comm,0) 급여차액
FROM emp;
--10. 각 학생들의 평균평점을 4.5만점으로 환산한 경우 각각 평점의 상승폭은 얼마인지 검색한다.
SELECT sno, sname, avr 평점, avr/8*9 환산, (avr/8*9)-avr 상승폭
FROM student;
--11. __교수는 __학과 소속입니다
-- 처럼 출력하세요
SELECT pname || ' 교수는 ' || section || '학과 소속입니다.'
FROM professor;
--12. 학교에는 어떤 학과가 있는지 검색하세요(교수 테이블 기반)
SELECT DISTINCT section
FROM professor;
--13. 교수의 지위는 어떤 것들이 있는지 검색하세요
SELECT DISTINCT orders
FROM professor;
--14. __학생의 4.5 환산 평점은 __입니다
-- 처럼 출력하세요
SELECT sname ||' 학생의 4.5 환산 평점은 ' || (avr/8*9) ||' 입니다.'
FROM student;
--15. __과목의 담당 교수 번호는 __입니다
-- 처럼 출력하세요
SELECT section||'과목의 담당교수 ' || pname ||' 번호는 '|| pno ||'입니다.'
FROM professor;
--16. 학교에 개설된 과목들은 몇 학점짜리인지 검색하세요
SELECT DISTINCT cname, st_num
FROM course;
--17. 학생들이 수강중인 과목의 과목번호를 검색하세요
SELECT DISTINCT cno, cname
FROM course;
--18.각 학과별로 교수의 정보를 검색한다
SELECT *
FROM professor
ORDER BY section;
--19.지위별로 교수의 정보를 검색한다
SELECT *
FROM professor
ORDER BY orders;
--20.각 학과별로 교수의 정보를 부임일자 순으로 검색한다
SELECT *
FROM professor
ORDER BY section, hiredate;
--21. 각 부서별로 사원의 연봉을 검색한다
-- 단 연봉이 높은 순으로 검색한다
SELECT job, eno, ename , sal*12+NVL(comm,0) 연봉
FROM emp
ORDER BY job, sal*12+NVL(comm,0) DESC;
--22. 급여가 10%인상된 경우 부서별로 각 사원의 연봉을 연봉순으로 검색한다
SELECT job, eno, ename, (sal*12*1.1+NVL(comm,0)) 인상연봉
FROM emp
ORDER BY job, (sal*12*1.1+NVL(comm,0)) DESC;
--23. 보너스가 100%인상된 경우 업무별로 각 사원의 연봉을 연봉순으로 검색한다
SELECT job, eno, ename, (sal*12+NVL(comm*2,0)) 연봉보너스
FROM emp
ORDER BY job, (sal*12+NVL(comm*2,0)) DESC;
--24. 학과별 학년별로 학생의 정보를 성적순으로 검색한다
SELECT major, syear, sno, sname, avr
FROM student
ORDER BY major, syear, avr DESC;
--25. 4.5점으로 환산된 평점을 이용 학과별로 학생의 정보를 성적순으로 검색한다
SELECT major, sno, sname, (avr/8*9) 환산평점
FROM student
ORDER BY major, (avr/8*9) DESC;
--화학과 학생검색
SELECT *
FROM student
WHERE major ='화학';
--믈리과 학생검색
SELECT *
FROM student
WHERE major ='물리';
--평점이 2.0 미만인 학생
SELECT *
FROM student
WHERE avr < '2.0';
--관우 검색
SELECT *
FROM student
WHERE sname ='관우';
--정교수 명단 검색
SELECT *
FROM professor
WHERE orders ='정교수';
--생물과 교수 명단 검색
SELECT *
FROM professor
WHERE section ='생물';
--송강 교수 정보 검색
SELECT *
FROM professor
WHERE pname ='송강';
--학년별 화학과 학생성적
SELECT *
FROM student
WHERE major ='화학'
ORDER BY syear;
-- 2000년전 부임교수 부임일순 정렬
SELECT *
FROM professor
WHERE hiredate <'2000/01/01'
ORDER BY hiredate;
--담당교수가 없는 과목 검색
SELECT *
FROM course
WHERE pno IS NULL;
'db : sql' 카테고리의 다른 글
Oracle/ BETWEEN과 IN 연산자 (0) | 2020.02.25 |
---|---|
Oracle/ 관계연산자와 LIKE연산자 (0) | 2020.02.25 |
Oracle/ WHERE절을 이용한 조건 검색 (0) | 2020.02.25 |
Oracle/ 정렬과 묶음 검색 (0) | 2020.02.25 |
Oracle/ 연산연결자와 중복제거 (0) | 2020.02.25 |