A를 B로 나눈 나머지
전달된 값을 주어진 형식으로 반환
주어진 값을 옵션에 따라 잘라버림, 옵션이 없다면 소수점을 자름
주어진 값을 옵션에 따라 반올림한다.
그룹핑된 인자의 총합을 넣어준다. 인자가 여러개이면 전체 합계와 소계를 넣어준다.
별도 링크 참고 https://gent.tistory.com/57
SELECT DNAME, JOB ,
count(*) AS "TOTAL EMP", SUM(SAL) "TOTAL SAL" FROM emp E, dept D
WHERE e.deptno = d.deptno
GROUP BY ROLLUP(DNAME, JOB)
(NULL) 로 출력되는 부분이 소계 및 전체 합계
그룹핑 하는 컬럼값이 NULL이면 1, NULL이 아니면 O을 반환한다.
DECODE(), CASE WHEN() 과 활용하여 소계 칼럼에 이름을 지정할수 있다.
SELECT DECODE(GROUPING(DNAME), 1, 'ALL DEPT', DNAME), DECODE(GROUPING(JOB),1,'ALL JOB', JOB) ,
count(*) AS "TOTAL EMP", SUM(SAL) "TOTAL SAL" FROM emp E, dept D
WHERE e.deptno = d.deptno
GROUP BY ROLLUP(DNAME, JOB)
위 내용과 결과는 동일하지만 이름이 생겼다.
문자열 왼쪽부터 주어진 길이로 채움
문자열 오른쪽 부터 주어진 길이로 채움
특정문자를 찾아 변경
특정문자을 어느 위치에서 자른다.
주어진 쿼리를 수행할때 프로세스를 여러개 동시에 수행한다. 속도는 빨라질수 있지만 자원을 많이 사용하고 잘못하면 DB가 죽을수도 있으니 주의해서 사용하여야 한다.
쿼리에서 1번 사용될 임시 테이블을 제작, 뷰와 비슷한 기능을 하지만 쿼리문 내부에서만 실행됨, 대신 쿼리를 실행할떄 1번만 파싱 됨으로 with로 생성된 테이블을 쿼리에서 많이 불러 사용한다면 성능상 유리하다.
WITH ex AS(
SELECT 'aaa' as A FROM DUAL
UNION
SELECT 'bbb' as A FROM DUAL
)
SELECT * FROM ex