kjh00n의 기록저장소
실습4 본문
office_db 밑에 office_table에서 실습
1. 나이를 기준으로 내림차순으로 출력
SELECT * FROM office_table ORDER BY age DESC;
2. 총무팀, 개발팀의 여성만 출력
SELECT * FROM office_table WHERE (depart = '총무팀' OR depart = '개발팀') AND sex = 'W';
3. 성별로 인원수 및 나이의 평균 출력
SELECT sex,COUNT(*),AVG(age) FROM office_table GROUP BY sex;
4. 전체 사원 중 이씨 성을 가진 남성의 모든 정보 출력
SELECT * FROM office_table WHERE name like '이%' AND sex ='M';
5. 이름에 '수'가 들어가는 대리의 모든 정보 출력(첫번째사람부터 4명만 출력)
SELECT * FROM office_table WHERE name like '%수%' AND position = '대리' limit 4;
6. 사원 번호가 20번대인 사람들의 직급만 출력
SELECT position FROM office_table WHERE office_no BETWEEN 20 AND 29;
7. 부서별로 인원수 및 가장 어린 나이를 출력
SELECT depart,COUNT(*),MIN(age) FROM office_table GROUP BY depart;
8. 김씨 성을 가진 남자의 부서, 직급, 이름을 출력
SELECT depart,position,name FROM office_table WHERE name like '김%' AND sex = 'M';
9. 팀장의 평균 나이 및 이름 출력
SELECT position,AVG(age),name FROM office_table WHERE position = '팀장';
10. 이름이 '재'로 끝나는 사람의 부서, 직급, 이름을 출력
SELECT depart,position,name FROM office_table WHERE name like '%재';
11. 전체 과장들의 사원번호, 이름, 부서 출력
SELECT office_no,name,depart FROM office_table WHERE position = '과장';
12. 30대의 남성의 직급, 이름, 나이를 출력 (두번째 사람부터 3명만 출력)
SELECT position,name,age FROM office_table WHERE age BETWEEN 30 AND 39 limit 1,3;
13. 30세 이상 50세 미만의 나이, 전화번호,성별 출력
SELECT age,tel,sex FROM office_table WHERE age BETWEEN 30 AND 49;
14. 개발팀 팀장의 모든 정보 출력
SELECT * FROM office_table WHERE position = '팀장' AND depart = '개발팀';
15. 30대들의 인원수 및 평균 나이, 가장 많은 나이, 적은 나이 출력
SELECT age,COUNT(age) AS '인원수',AVG(age) AS '평균 나이',MAX(age) AS '가장 많은 나이',MIN(age) AS '가장 적은 나이' FROM office_table;
16. 직급 별로 인원수 출력
SELECT position AS '직급',COUNT(*) AS '인원수' FROM office_table GROUP BY position;
17. 전화번호가 3으로 끝나는 직원의 직급, 이름, 나이 출력
SELECT position,name,age FROM office_table WHERE tel like '%3';
18. 20대와 40대 중에 경영팀인 사람의 성별을 제외한 모든 정보 출력
SELECT office_no,depart,position,name,age,tel FROM office_table WHERE age BETWEEN 20 AND 39 AND depart = '경영팀';
19. 이름에 '민'이 들어가는 사람의 모든 정보 출력
SELECT * FROM office_table WHERE name like '%민%';
20. 이씨 성을 가진 남성의 평균 나이 출력
SELECT AVG(age) FROM office_table WHERE name like '이%' AND sex = 'M';
21. 나이가 50이상인 사람의 부서, 이름, 성별 출력
SELECT depart,name,sex FROM office_table WHERE age >= 50;
22. 가장 나이가 많은 사람의 모든 정보 출력
SELECT * FROM office_table GROUP BY age ORDER BY age DESC limit 1;
23. 20대 중에서 가장 나이가 어린 사람의 이름, 직급, 나이 출력
SELECT name,position,age FROM office_table WHERE age BETWEEN 20 AND 29 ORDER BY age ASC limit 1;
24. 남성중 가장 나이가 많은 사람의 부서, 직급, 이름 출력
SELECT depart,position,name FROM office_table WHERE sex ='M' ORDER BY age DESC limit 1;
SELECT depart,position,name FROM office_table WHERE sex ='M' AND age = (SELECT MAX(age) FROM office_table);
25. 총무팀 중 가장 나이가 어린 사람의 모든 정보 출력
SELECT * FROM office_table WHERE depart = '총무팀' ORDER BY age ASC limit 1;
SELECT * FROM office_table WHERE depart = '총무팀' AND age = (SELECT MIN(age) FROM office_table WHERE depart = '총무팀');
'DB' 카테고리의 다른 글
실습5 (0) | 2024.11.21 |
---|---|
집합 연산자 (Set Operator) (0) | 2024.11.21 |
JOIN (0) | 2024.11.21 |
데이터베이스 엔진 (Storage Engine) (0) | 2024.11.21 |
데이터 사전, Schema (0) | 2024.11.21 |