반응형

SQL

26. 인라인 뷰 와 Top-N 분석

- 인라인 뷰 

from 절에 테이블 처럼생긴 서브쿼리문장이 들어감

개발자들이 관리작업할때 잘사용됨.

 

- ROWNUM

데이터 베이스 마다있다.

row(열)의 개수,번호

몇개 미만으로 출력될건지

첫번째 블록부터 데이터를 순서적으로 읽음

출력만 3개만 하는게 아니라 엑세스 했을때 가까운 애를 출력하는것이다.

 

예제

## 각 부서별 최소 급여자를 검색한다.
select eno, ename, d.dno, sal, msal
from emp e,
    (select dno, min(sal) msal from emp
     group by dno) d
where e.dno = d.dno
and sal = msal;
##emp 테이블로부터 10행까지 검색
select rownum, eno, ename, job, mgr, hdate
from emp
where rownum <= 10;

##최상위 연봉을 지급 받는 3인을 검색
select rownum, eno, ename, ansal
from (select eno, ename, sal*12+nvl(comm,0) ansal
      from emp
      order by ansal desc)
where rownum <= 3;

출력문장

 

실습

1.4.5환산 평점이 가장 높은 3인의 학생을 검색한다.
select rownum, sno, sname, hiavr
from (select sno, sname, avr*1.125 hiavr
      from student
      order by hiavr desc)
where rownum <= 3;
2.화학과 학생 중 기말고사 유기화학 점수가 최하위인 학생 3명을 검색한다.
select rownum, sno, cname, result, sname
from (select s.sno, sname, major, cname, result
      from student s, score r, course c
      where c.cno=r.cno and s.sno=r.sno
      and major = '화학' and cname = '유기화학'
      order by result)
where rownum <= 3;

 

27. 시퀀스

시퀀스 - 사용자에게 값을 하나씩 주는것 

-프라이머리 키 컬럼이 값의 의미가  없는 경우가 많다.

 다른 컬럼과 구별만 되면 된다.

 

시퀀스 생성 문법

SQL>create sequence 시퀀스
start with 시작_값 ## 없어도 상관없다.
increment by 증가_값
maxvalue 상한_값 | nomaxvalue ##잘 안쓴다
minvalue 하한_값 | nominvalue ##잘 안씀
cycle | nocycle
cache 캐쉬_개수 | nocache; ## 

 

 

SQL 마무리

- 꼭 해야 하는것

조인 

TO_CHAR() 출력서식을 맞추려고하는것 -실무에서는 어떤 서식에 꼭 맞춰야한다

TO_DATE() 오라클한테 문자가아닌 날짜로 해석할 수 있게 하는것

그룹함수

erd , 테이블 상세도표로 된걸 SQL 스크립트로 바꿔야한다.

금액은 NULL 값이 없다.

변환함수.

 

 

 

 

 

 

반응형

'2019 > 학원' 카테고리의 다른 글

보안 영역 구성을 위한 로컬 라우터 구현  (0) 2019.12.20
물리적보안통제  (0) 2019.12.20
12.18학원  (0) 2019.12.18
12.16 학원  (0) 2019.12.16
12.12학원  (0) 2019.12.12

+ Recent posts