logo

SQL | From 절의 하위 쿼리

SQL 하위 쿼리는 하나의 쿼리를 다른 쿼리 내에 삽입하여 복잡한 방식으로 데이터를 검색하고 조작하는 데 더 많은 중요성을 추가할 수 있게 해주는 귀중한 기능입니다. 이후에 외부 쿼리에서 사용할 임시 테이블이나 중간 결과를 설정하는 데 사용됩니다.

FROM 절의 하위 쿼리

FROM 절을 사용하여 SQL에서 하위 쿼리 표현식을 지정할 수 있습니다. 하위 쿼리에 의해 생성된 관계는 추가 작업을 위해 외부 쿼리가 적용되는 새 관계로 사용됩니다. 하위 쿼리FROM절은 물리적 테이블에 존재하지 않는 임시 데이터 세트를 생성해야 할 때 사용됩니다. 이는 복잡한 데이터 세트로 작업할 때 매우 유용할 수 있습니다.

롬이 뭐야?

외부 쿼리의 FROM 절에서 참조되는 테이블의 상관 변수는 FROM 절의 하위 쿼리 내에서 직접 사용할 수 없습니다. 아래에는 다양한 시나리오에서 사용되는 FROM 절에서 하위 쿼리를 사용하는 두 가지 구문이 나와 있습니다.



1. 간단한 하위 쿼리FROM절:

열1 열2 선택

FROM(SELECT 열_x AS C1 열_y FROM 테이블 WHERE 조건) AS 하위 쿼리_테이블

어디서 외부_조건;

2. 하위 쿼리FROM다음과 같은 조항JOIN:

열1 열2 선택

FROM (SELECT 열_x AS C1 열_y FROM 테이블 WHERE PREDICATE_X) AS 테이블2

엑셀의 날짜 차이

JOIN table1 ON table2.some_column = table1.some_column

서술하는 곳;

매개변수:

  • 하위 쿼리 : 괄호로 묶인 내부 쿼리입니다. 임시 테이블 역할을 할 데이터를 검색합니다.
  • 별명 : 하위 쿼리에는 별칭(subquery_table)를 외부 쿼리에서 참조합니다.
  • 외부 쿼리 : 그러면 외부 쿼리는 필터를 적용하거나 추가 작업을 수행하는 하위 쿼리로 생성된 이 임시 테이블을 사용할 수 있습니다.

FROM 절의 하위 쿼리 작동 방식

  • 하위 쿼리 평가 : from 절의 하위 쿼리가 먼저 평가된 다음 평가 결과가 새로운 임시 관계에 저장됩니다. 
  • 외부 쿼리 : 하위 쿼리가 실행되어 데이터세트를 반환한 후 외부 쿼리는 외부 쿼리의 where 절에 있는 조건자를 만족하는 임시 관계에서 해당 튜플만 선택하여 평가됩니다.

FROM 절에 하위 쿼리를 사용하는 예

FROM 절의 하위 쿼리가 실제로 어떻게 작동하는지 이해하기 위해 몇 가지 실제 사례를 논의해 보겠습니다. 여기 테이블이 두 개 있어요 강사 급여, 부서 등 강사에 대한 정보가 포함된 테이블입니다. 다른 하나는 부서 부서의 예산을 포함하여 다양한 부서에 대한 정보가 포함된 테이블입니다.

강사 테이블 

강사ID이름부서샐러리
44547스미스컴퓨터 과학95000
44541청구서전기 같은55000
47778홀로인문학44000
48147에릭기계80000
411547향유정보 기술65000
48898예나예의 바른50000

부서 테이블

부서명예산
컴퓨터 과학100000
전기 같은80000
인문학50000
기계40000
정보 기술90000
예의 바른60000

예시 1: 모든 학과의 평균예산보다 급여가 많은 교수를 모두 찾아보세요. 

이 예에서는 FROM 절의 하위 쿼리를 사용하여 모든 부서의 평균 예산을 계산한 다음 강사의 급여와 비교합니다.

루프에 대한 bash

질문:   

문자열 포맷터
SELECT I.InstructorID I.Name I.Department I.Salary  
FROM (SELECT AVG(Budget) AS averageBudget FROM Department) AS BUDGET
Instructor AS I
WHERE I.Salary > BUDGET.averageBudget;

산출  

강사ID이름부서샐러리
44547스미스컴퓨터 과학95000
48147에릭기계80000

설명:

  • 부서 관계의 모든 부서의 평균 예산은 70000입니다.
  • Erik과 Smith는 강사 관계에서 급여가 70000을 초과하여 출력 관계에 존재하는 유일한 강사입니다. 

FROM 절에 하위 쿼리를 사용하는 이유는 무엇입니까?

FROM 절에 하위 쿼리를 사용하면 아래와 같이 다양한 이점이 있습니다.

  • 단순화 : 복잡한 쿼리를 관리하기 쉬운 작은 부분으로 나누어 단순화할 수 있습니다. 데이터베이스에 임시 테이블을 명시적으로 생성할 필요는 없습니다.
  • 가독성 향상 : FROM 절에 하위 쿼리를 사용하면 쿼리가 분할되기 때문에 쿼리를 더 쉽게 읽을 수 있습니다.> 유연성 : 하위 쿼리를 사용하면 중간 테이블을 만들 필요 없이 다른 데이터세트에 대한 집계 또는 필터링과 같이 불편할 수 있는 작업을 수행할 수 있습니다.

결론

FROM 절의 하위 쿼리를 사용하면 다음을 정의할 수 있습니다.  임시 결과 세트 외부 쿼리에 의해 활용될 수 있습니다. 복잡한 SQL 작업을 더 쉽게 만들어 쿼리 가독성을 높이고 데이터 필터링 및 집계에 유연성을 제공합니다. FROM 절 내에서 하위 쿼리를 활용하는 방법을 아는 것은 모든 SQL 실무자의 기본 기술입니다. 특히 복잡한 데이터베이스를 다루거나 복잡한 데이터 분석을 수행해야 하는 경우에는 더욱 그렇습니다.

퀴즈 만들기