본문 바로가기
SQL(Oracle)/Oracle 이론 정리

[Oracle] SELECT / WHERE / GROUP BY / HAVING / ORDER BY

by ProSeraphina 2020. 8. 5.

#SELECT: 검색(→ DQL(질의어); Data Query Language)

  형식) SELECT ~ FROM table명/view명/SELECT ~

          ┌ 필요한 데이터만 검색: 컬럼명, 컬럼명,...

          └ 전체 검색: *

 

#GROUP BY: 그룹컬럼

#HAVING: 그룹조건(GROUP BY와 반드시 함께 나옴)

 

#WHERE: 원하는 조건만 골라낼 때

  문법) SELECT 컬럼명/표현식 FROM 테이블/뷰 WHERE 원하는 조건(컬럼명 연산자 값);

   ***문자와 날짜 입력시 '작은따옴표' 사용!!

 

#ORDER BY

오라클은 데이터 정렬이 안 된 상태→저장된 순서로 읽어오기 때문에 ORDER BY 사용

  →but, 속도가 느려지므로 사용 지양, 인덱스 사용 권장

  형식) ORDER BY 컬럼명(순서대로 1~) ASC(1)/DESC(2)

   ex) 부서번호는 10부터, 월급은 많은 순으로: 이중정렬
        SELECT ename,sal,deptno FROM emp ORDER BY deptno ASC, sal DESC;

        →1. deptno 오름차순 정렬, 2. 동일 deptno 내에서 sal 내림차순 정렬

  ex) 인기순위 5위까지 출력

  :SELECT ename,sal,rownum FROM (select ename, sal from emp ORDER BY sal DESC) 

   WHERE rownum<=5;

  (rownum은 원래 존재하는 번호)

 

끝.

댓글