일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
- 중학1-1
- html/css
- 데이터분석
- pandas
- 언리얼프로젝트
- 요구사항확인
- C++
- 컴퓨터구조
- 머신러닝
- 디버깅
- 데이터시각화
- 운영체제
- 딥러닝
- 혼공머신
- 중학수학
- JSP/Servlet
- 텍스트마이닝
- 데이터입출력구현
- 자바
- 정수와유리수
- 자바 실습
- 데이터베이스
- 파이썬라이브러리
- numpy/pandas
- 언리얼학습
- SQL
- 정보처리기사필기
- 파이썬
- 정보처리기사실기
- 코딩테스트
- Today
- Total
클라이언트/ 서버/ 엔지니어 " 게임 개발자"를 향한 매일의 공부일지
서브쿼리 1 - 서브쿼리에 대하여 본문
SQL 기초 과정의 마지막 주차 학습이다. 여기까지만 하고 오후 공부를 마치려고 한다. 심화 과정은 지금은 꼭 필요한 공부는 아닌 것 같아 할지 말지 고민이 된다. 어쨌든 5주차 공부를 시작해본다.
이론 1 - 서브쿼리
실습 1 - 단행 서브쿼리 1
단일행은 서브쿼리의 결과가 한 개의 행으로 나타나는 것이다.
전체 테이블을 조회하면 다음과 같다. 먼저 서브쿼리와 메인 쿼리에 있어야 할 조건을 정한다.
사원 번호가 7인 사람을 서브쿼리로 작성하였다.
7인 사람은 생년월일이 1981년 6월 9일이다. 나이가 어리려면 메인 쿼리의 생년월일이 더 커야 한다.
이렇게 7번 사원보다 어린 사원이 출력되었다.
실습 2 - 단일 행 서브쿼리 2
이 문제에서는 전 사원의 급여 평균보다 낮은 급여를 받는 사원을 조회해야 한다. 급여는 sal이 된다.
먼저 서브쿼리를 작성해보았다. 여기서는 특별한 조건이 필요하지 않아 where를 쓰지 않았다. emp 테이블에서 전 사원의 평균을 구했다. 전 사원의 평균 급여는 2030이다.
이제 메인쿼리도 작성해보기로 하자.
전 사원의 급여 평균보다 작은 사원들이 잘 출력되었다.
실습 3 - 단일 행 서브쿼리 3
먼저 서브쿼리와 메인쿼리로 만들 조건을 정하고, 서브쿼리를 작성해본다.
부서 번호가 40인 사원들의 급여 평균을 조회해보았다.
그런 다음 메인 쿼리를 작성한다. 모든 컬럼과 나이를 조회해야 하는데 나이는 여기 조건에 주어졌으므로 이 코드를 복사해서 붙여 넣었다.
이제 메인 쿼리 안에 서브쿼리를 넣어본다.
이제 사원 번호가 40보다 더 높게 받는 직원이 출력되었다.
40보다 더 작게 받는 직원들을 출력해보았다.
40과 같은 급여를 받는 직원은 아무도 없어서 나타나지 않았다.
퀴즈 1 - 서브쿼리
이 문제는 조금 헤깔렸다. 메인 쿼리가 실행되기 이전에 실행되는 것은 맞지만, 한 문장에서 여러 번 사용이 가능하다.
학습을 마치고
5주차 첫번째 공부를 이렇게 마쳐본다. 저녁 먹기 전에 여기까지는 끝내고 싶었는데 목표를 달성해서 정말 기쁘다. 서브 쿼리는 분량이 많지 않아 금방 끝날 것 같다.
만약에 조금 전에 공부했던 MySQL이 잘 실행이 되면 나머지 공부를 이어서 하고, 그래도 안 되면 SQL 심화 학습을 진행해보려고 한다.
'알고리즘 및 자료 관리 > SQL' 카테고리의 다른 글
서브쿼리 3 - 반환에 따른 분류 2 : 다중행 서브쿼리 실습해보기 (0) | 2024.10.13 |
---|---|
서브쿼리 2 - 반환에 따른 분류 1 : 단일 행 서브쿼리와 다중 행 서브쿼리 (0) | 2024.10.13 |
다수의 테이블 제어하기 7 - 미션 문제 풀기 및 단원 정리 (0) | 2024.10.13 |
다수의 테이블 조회하기 6 - RIGHT JOIN (0) | 2024.10.13 |
다수의 테이블 조회하기 5 - LEFT JOIN (1) | 2024.10.13 |