ex1 --커미션을 받는 사원의 수를 구하시오.
select count(*) from emp
where comm is not null;
ex2 --부서번호가 10인 사원중에 커미션을 받는 사원의 수를 구하시오
select count(*) from emp where deptno=10 and comm is not null;
ex3 --사원테이블에서 job의 종류는 몇 개인가?
select count(*)from(
select job from emp group by job
);
ex4 --부서별로 급여의 최고액을 구한 후 급여가 많은 순서데로 정렬하시오
select deptno,max(sal) from emp group by deptno;
--order by max(sal) desc; 내림차순
ex5 --부서별 평균 급여가 2000이상인 부서들만 부서별 평균을 구하시오.
select deptno,avg(sal) from emp
group by deptno
having avg(sal)>=2000;
ex5 --급여가 1000이상인 사원들만 부서별 평균급여를 구한 후 부서별 평균 급여가 2000이상인
--부서만 부서번호와 부서별 평균급여를 구하시오.
select deptno,avg(sal) from emp
where sal>=1000
group by deptno having avg(sal) >=2000;
● inner join(값이 있는것만 붙인다)
select * from emp e
inner join departments d -- e를 기준으로 d를 붙인다.(둘다 값이 있는것만)
on e.deptno = d.department_id;
select * from departments d
inner join emp e -- d를 기준으로 e를 붙인다.
on d.department_id = e.deptno;
● left,right outer join(값이 없는것도 붙인다)
select * from emp e
left OUTER join departments d --(왼쪽 기준으로 오른쪽이 없어도 붙여준다.)
on e.deptno = d.department_id;
select * from departments d
left OUTER join emp e -- d를 기준으로 e를 붙인다.
on d.department_id = e.deptno;
'sql' 카테고리의 다른 글
sql (0) | 2024.02.27 |
---|---|
맥북에서 mysql 실행 (0) | 2024.02.23 |
열거형에 sql 연동해보기 (0) | 2024.02.06 |
쇼핑몰에 대한 sql (0) | 2024.02.02 |
docker 명령어 (0) | 2024.01.30 |