---- 단일행함수(숫자함수, 문자함수, 날짜함수) ---
입력값이 n개 --> 단일행함수를 실행한 결과도 n개
SELECT NAME, SUBSTR(NAME,2)
FROM TBL_NEWSAWON;
<결과>
NAME SUBSTR(NAME,2)
한석규 석규
석규 규
세석한 석한
네석규 석규
오연수 연수
일용이 용이
이미자 미자
삼미자 미자
사미자 미자
고소영 소영
노주현 주현
도지원 지원
<문제>
현재일로부터 1년2개월 3일 4시간 5분 6초 뒤를 구하세요
<풀이>
SELECT SYSDATE,
ADD_MONTHS(SYSDATE,(1*12)+2) + 3
+4/24+ 5/(24*60) + 6/(24*60*60),
SYSDATE + TO_YMINTERVAL('01-02') --년,월
+TO_DSINTERVAL('003 04:05:06')
FROM DUAL;
--> 2010-11-26 오후 1:57:30 2012-01-29 오후 6:02:36 2012-01-29 오후 6:02:36
-- *** GROUP 함수(=집계함수, 집합함수) *** --
입력값이 n개 --> GROUP 함수를 실행한 결과는 1개 GROUP 함수는 NULL은 모두 제외하고 연산을 한다.
1. SUM --> 합계
2. AVG --> 평균
3. COUNT --> 행의 갯수
4. MAX --> 최대값
5. MIN --> 최소값
6. VARIANCE --> 분산값
7. STDDEV --> 표준편차
SELECT SUM(SAL)
FROM TBL_NEWSAWON;
<결과>
SUM(SAL)
51000
------------------------------------
SELECT SUM(COMM)
FROM TBL_NEWSAWON;
<결과>
SUM(COMM)
4600
------------------------------------
SELECT SUM(COMM)
SELECT SAL
FROM TBL_NEWSAWON;
SELECT COUNT(SAL)
FROM TBL_NEWSAWON;
<결과>
COUNT(SAL)
19
------------------------------------
SELECT COUNT(COMM)
FROM TBL_NEWSAWON;
<결과>
COUNT(COMM)
10
------------------------------------
SELECT SUM(SAL) / COUNT(SAL),
SUM(SAL) / 20,
AVG(SAL)
FROM TBL_NEWSAWON;
<결과>
SUM(SAL)/COUNT(SAL) SUM(SAL)/20 AVG(SAL)
2684.21052631578947368 2550 2684.21052631578947368
------------------------------------ ------------------------------------ ------------------------------------
SELECT SUM(COMM) / COUNT(COMM), -- NULL이 아닌 사람들의 평균
SUM(COMM) / 20,
AVG(COMM)
FROM TBL_NEWSAWON;
<결과>
SUM(COMM)/COUNT(COMM) SUM(COMM)/20 AVG(COMM)
460 230 460
SELECT AVG(COMM), AVG(NVL(COMM,0))
FROM TBL_NEWSAWON;
<결과>
AVG(COMM) AVG(NVL(COMM,0))
460 242.105263157894736842105263157894736842
SELECT MAX(SAL), MIN(SAL)
FROM TBL_NEWSAWON;
<결과>
MAX(SAL) MIN(SAL)
5000 800
SELECT MAX(NAME), MIN(NAME)
FROM TBL_NEWSAWON;
<결과>
MAX(NAME) MIN(NAME)
한석규 고두심
SELECT MAX(HIREDATE), MIN(HIREDATE)
FROM TBL_NEWSAWON;
<결과>
MAX(HIREDATE) MIN(HIREDATE)
2005-10-09 1990-01-02
SELECT VARIANCE(SAL), STDDEV(SAL),
POWER(STDDEV(SAL), 2),
SQRT(VARIANCE(SAL))
FROM TBL_NEWSAWON;
------------------------------------------------------------------------
SELECT DEPTNO, SUM(SAL)
FROM TBL_NEWSAWON;
--> ORA-00937: 단일 그룹의 그룹 함수가 아닙니다
'IT. 컴퓨터' 카테고리의 다른 글
[오라클] 급여의 합 (0) | 2020.08.23 |
---|---|
[오라클] 뷰테이블 조회 VIEW_NEWSAWON (0) | 2020.07.02 |
[오라클]] INLINE VIEW (0) | 2020.06.29 |
[오라클] case, decode, case when then else end (0) | 2020.06.20 |
[오라클] 날짜함수, 변환함수 (0) | 2020.06.18 |