본문 바로가기

Oracle/SQL

SQL 다중행 함수 - 그룹함수 (MIN) 최소값

MIN (최소값 출력)

min 만 출력한다면 GROUp by 절은 필요없다. 

하지만 다른 컬럼과 함께 Min 의 값을 도출하려면 GROUP by 절을 꼭 사용해주어야 오류 없이 출력된다. 

예제 : 부서번호가 20번인 사원들의 최소월급

select min(sal) 
from emp 
where deptno = 20 ;

문제 : 직업, 직업별 최소월급 출력 , 직업을 abcd 순으로 출력

select job, min(sal) 
from emp 
group by job
order by job asc;

문제 : 부서번호, 부서번호별 최소 월급을 출력 부서번호별 최소월급이 낮은것부터출력

select deptno, min(sal) 
from emp 
group by deptno 
order by 2 asc;

문제 : 입사년도(4자리), 입사년도별 최소월급 출력 , 입사한 년도를 asc 하게 출력

select to_char(hiredate, 'RRRR'), min(sal) 
from emp 
group by to_char(hiredate, 'RRRR') 
order by to_char(hiredate, 'RRRR') asc;