DB_SQL_다중행함수01

BBBeom·2022년 8월 8일

DB

목록 보기
5/18

다중행 함수 (복수행 함수)

-> 다중의 열이 들어와서 하나의 열로 출력결과를 반환함

GROUP BY 절 : 결과값을 원하는 열로 묶어 출력
GROUP BY 절의 조건 : HAVING 절

SELECT SUM(SAL)
FROM EMP;

SELECT SAL은 다중의 열을 선택하게된다
하지만 SUM은 다중의 열의 값을 다 더한후
하나의 열로 결과가 RETURN된다 그래서 다중행 함수 이다

/*결과값이 복수행과 단일행이 같이 들어가있으면 출력이 불가능하다*/
SELECT ENAME, SUM(SAL)
FROM EMP;
  • 함수의 종류
SUM		다중행의 총 합을 하나의 열에 리턴
COUNT	다중행의 갯수를 하나의 열에 리턴
MAX		다중행의 가장 높은 수를 하나의 열에 리턴
MIN		다중행의 가장 작은 수를 하나의 열에 리턴
AVG		다중행의 평균 값을 하나의 열에 리턴
  1. SUM()
SELECT SUM(COMM)
FROM EMP;

SELECT SUM(DISTINCT SAL),
SUM(ALL SAL),
SUM(SAL)
FROM EMP

/*EMP테이블의 모든 사원들에 대하여 급여와 추가수당의 합을 출력*/
SELECT SUM(SAL) AS 급여합, 
SUM(COMM) AS 수당합
FROM EMP;

NULL값은 더해지지 않고 무시한다
ALL SAL과 SAL 은 같은 결과를 리턴한다

  1. COUNT()
SELECT COUNT(*)
FROM EMP; /*행의 수 세기*/

SELECT COUNT(COMM)  /*NULL 값은 제외가 된다*/
FROM EMP;

/*부서번호가 30번인 직원수 구하기*/
SELECT COUNT(*)
FROM EMP
WHERE DEPTNO = 30;
  • COUNT 함수의 특징은 NULL값은 무시하고
    카운팅 하지 않는다는 것이다 기억하자
  1. MAX()
/*부서번호가 20인 사원의 입사일중  제일 최근 입사일 출력*/

SELECT MAX(HIREDATE) /*날짜에도 사용가능한데*/
FROM EMP             /*최근의 날짜값이 크기때문에 MAX를 쓴다*/
WHERE DEPTNO = 20;
  1. MIN()
    NULL값을 0이라고 착각할수 있지만 아니다
    NULL은 무시되고 가장 최소값이 리턴된다

  2. AVG()
    평균 값을 계산해주는데 보통 소숫점을 정리해주는 함수와 같이 사용한다
    NULL값은 무시되고 평균을 구한다

SELECT ROUND(AVG(SAL),2)	/*소수점 둘째자리까지의 평균*/
FROM EMP;
profile
BackEnd_BasketBall_Beom

0개의 댓글