SQL(Oracle)/Oracle 이론 정리
[Oracle] SELECT / WHERE / GROUP BY / HAVING / ORDER BY
ProSeraphina
2020. 8. 5. 17:23
#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은 원래 존재하는 번호)