Spring 6일차 수업

김형우·2022년 12월 13일
0

Spring

목록 보기
6/8

1.http://localhost:8282/emp/list paging처리된 list 를 출력하시오.

2.rownum 에 대하여 설명하시오.

select를 이용해 받아온 항목을 받아온 순서를 뜻하는 변수이다.

3.아래의 쿼리를 완성하시오.

  • 페이징을 위한 mvc_board 쿼리
SELECT * FROM 
(SELECT ROWNUM AS RNUM, A.* FROM 
(SELECT * FROM mvc_board order by bGroup desc, bStep asc) A 
WHERE ROWNUM <= #{pageNum} * #{amount} ) 
WHERE RNUM > (#{pageNum}-1) * #{amount} 

설명 :
1. 먼저 bgroup을 내림차순, bstep을 오름차순 정렬한 데이터를 A라 정의한다,
2. pagenum amount 미만의 rownum을 조건으로 A의 모든것과 rownum(별명:rnum)을 받아오고
3. 3번째 조건 pagenum
amount보다 rnum이 큰 것을 가져온다

  • 부서별로 부서이름, 부서위치, 사원 수 및 평균 급여를 출력하라.
    그리고 각각의 컬럼명을 부서명,위치,사원의 수,평균급여로 표시하라.
SELECT D.DNAME AS "부서명", D.LOC AS "부서위치",
COUNT(E.EMPNO) as "사원 수", AVG(E.SAL) as "평균 급여"
FROM EMP E, DEPT D 
WHERE E.DEPTNO = D.DEPTNO 
GROUP BY D.DNAME, D.LOC;
  • 관리자 번호 및 해당 관리자에 속한 사원들의 최저 급여를 출력하라.
    단, 관리자가 없는 사원 및 최저 급여가 1000 미만인 그룹은 제외시키고 급여를 기준으로 출력 결과를 내림차순으로 정렬하라.
select mgr, min(sal) from emp 
where mgr not null group by mgr
having min(sal) >= 1000
order by min(sal) desc;
  • 관리자의 수를 출력하되, 관리자 번호가 중복되지 않게하라. 그리고,
    컬럼명을 Number of Manager로 지정하여 출력하라.
select distinct(count(mgr)) as "Number of Manager" from emp; 

4.페이징 처리를 위한 순서를 정리하시오.

backend 처리 -> frontend 처리 -> database query 정의

profile
개발자 지망생

0개의 댓글