--새로운 테이블 만들기
create table sawon(num number(5) CONSTRAINT sawon_pk_num primary key,
name varchar2(20),
gender varchar2(10),
buseo varchar2(20) CONSTRAINT sawon_ck_buseo check(buseo in('교육부', '홍보부', '관리부') ),
pay number(10) default 1200000);
--새로운 시퀀스
create SEQUENCE seq_sawon nocache;
--데이터 10개정도
insert into sawon values (seq_sawon.nextval, '김나리', '여자', '교육부', 3450000);
insert into sawon values (seq_sawon.nextval, '임현정', '여자', '홍보부', 9999999);
insert into sawon values (seq_sawon.nextval, '김동규', '남자', '관리부', 9999999);
insert into sawon values (seq_sawon.nextval, '하하', '남자', '관리부', 4845542);
insert into sawon values (seq_sawon.nextval, '강호동', '남자', '관리부', 2758541);
insert into sawon values (seq_sawon.nextval, '조정석', '남자', '교육부', 8542682);
insert into sawon values (seq_sawon.nextval, '박나래', '여자', '관리부', 1248565);
insert into sawon values (seq_sawon.nextval, '이정재', '남자', '홍보부', 4475125);
insert into sawon values (seq_sawon.nextval, '김혜수', '여자', '관리부', 5835441);
insert into sawon values (seq_sawon.nextval, '유민상', '남자', '홍보부', 2700000);
insert into sawon values (seq_sawon.nextval, '김민정', '여자', '교육부', 4875421);
insert into sawon values (seq_sawon.nextval, '전도연', '여자', '관리부', 5000000);
--부서별로 인원수, 최고급여, 최저급여 조회
select buseo 부서명, count(buseo) 인원수, max(pay) 최고급여, min(pay) 최저급여
from sawon
group by buseo;
--최고급여, 최적급여에 화폐단위 3자리 컴마 나오게
select buseo 부서명, count(buseo) 인원수,
To_char(max(pay), 'L999,999,999') 최고급여,
min(pay) 최저급여
from sawon
group by buseo;
--부서별 인원수와 평균급여 출력하시오
--인원수 뒤에 3명이 되도록...
select buseo 부서명, count(buseo) || '명' 인원수, round(avg(pay),2) 평균급여
from sawon
group by buseo;
--성별 인원수와 평균급여, 최고급여, 최저급여를 구하시오
select gender 성별, count(gender) 인원수,round(avg(pay),2) 평균급여, min(pay) 최저급여
from sawon
group by gender;
--부서별 인원이 4명 이상인 경우만 출력
select buseo 부서명, count(buseo) || '명' 인원수, round(avg(pay),2) 평균급여
from sawon
group by buseo
having count(buseo)>=4;
--sawon 테이블의 sawon_ck_buseo 를 제거하시오
--제약조건 삭제
alter table sawon drop CONSTRAINT sawon_ck_buseo;
INSERT into sawon values(seq_sawon.nextval,'김선호','남자','개발부',3490000);
commit;
--sawon에 name 컬럼에 unique 제약조건 추가하기 (sawon_uk_name);
alter table sawon add CONSTRAINT sawon_uk_name UNIQUE(name);
'DB > 오라클 SQL문' 카테고리의 다른 글
26. 어제 복습 문제 (0) | 2022.02.24 |
---|---|
25. ★ 시퀀스 | 테이블 | 상품추가 | primary key | CONSTRAINT | REFERENCES | 조인 방법 3개 ★ (0) | 2022.02.23 |
25. 조인 (가상테이블) | 조인 문제 5개 | 비등가조인 (0) | 2022.02.23 |
25. 서브쿼리(쿼리안에 또다른 쿼리 담김) | 문제 7개 (0) | 2022.02.23 |
25. Rollup( group by 절에 조건으로 소계값) | Cube (각 소계와 전체총계까지) (0) | 2022.02.23 |