수색…


하위 쿼리

부속 조회는 다른 SQL 조회 내의 조회입니다. 부속 조회는 내부 조회 또는 내부 선택이라고도하며 부속 조회를 포함하는 명령은 외부 조회 또는 외부 선택이라고합니다.

노트

  1. 하위 쿼리는 괄호로 묶어야하며,
  2. 하위 쿼리에서는 ORDER BY를 사용할 수 없습니다.
  3. BLOB, 배열, 텍스트 데이터 유형과 같은 이미지 유형은 하위 쿼리에서 사용할 수 없습니다.

하위 쿼리는 IN, SELECT 연산자, 비교 연산자 등의 where 절, select 절, select 절에서 select, insert, update 및 delete 문과 함께 사용할 수 있습니다.

우리는 하위 쿼리 예제를 보여주기 위해 쿼리를 수행 할 ITCompanyInNepal이라는 테이블을 가지고 있습니다 :

여기에 이미지 설명을 입력하십시오.

예 : Select 문을 사용하는 SubQuery

In 연산자와 where 절을 사용합니다.

SELECT *
FROM ITCompanyInNepal
WHERE Headquarter IN (SELECT Headquarter 
                      FROM ITCompanyInNepal
                      WHERE Headquarter = 'USA');

비교 연산자where

SELECT *
FROM ITCompanyInNepal
WHERE NumberOfEmployee < (SELECT AVG(NumberOfEmployee) 
                          FROM ITCompanyInNepal
                      )

선택 절 포함

SELECT   CompanyName,
         CompanyAddress,
         Headquarter,
         (Select SUM(NumberOfEmployee)
         FROM ITCompanyInNepal
         Where Headquarter = 'USA') AS TotalEmployeeHiredByUSAInKathmandu
FROM     ITCompanyInNepal 
WHERE    CompanyAddress = 'Kathmandu' AND Headquarter = 'USA'

insert 문을 사용하는 하위 쿼리

IndianCompany 테이블의 데이터를 ITCompanyInNepal에 삽입해야합니다. IndianCompany 테이블은 아래와 같습니다.

여기에 이미지 설명을 입력하십시오.

INSERT INTO ITCompanyInNepal
SELECT * 
FROM IndianCompany

업데이트 문이있는 하위 쿼리

미국 본사가있는 모든 회사가 미국 기업의 정책 변화로 인해 네팔의 모든 미국 기반 회사의 직원 50 명을 해고하기로 결정했다고 가정합니다.

UPDATE ITCompanyInNepal
SET NumberOfEmployee = NumberOfEmployee - 50
WHERE Headquarter IN (SELECT Headquarter 
                      FROM ITCompanyInNepal 
                      WHERE Headquarter = 'USA')

Delete 문을 사용하는 하위 쿼리

덴마크에 본사를두고있는 모든 회사가 네팔에서 회사를 폐쇄하기로 결정했다고 가정합니다.

DELETE FROM ITCompanyInNepal
WHERE Headquarter IN (SELECT Headquarter 
                     FROM ITCompanyInNepal
                     WHERE Headquarter = 'Denmark')


Modified text is an extract of the original Stack Overflow Documentation
아래 라이선스 CC BY-SA 3.0
와 제휴하지 않음 Stack Overflow