이 문서에서 설명합에 대한 상관관계 및 상호 연관된 하위에서 SQL 서버(Transact-SQL)으로 예입니다.
상관 하위 쿼리
상관 하위 쿼리는 값이 외부 쿼리에 의존하는 하위 쿼리입니다. 상관된 하위 쿼리는 하위 쿼리에 의해 선택된 각 행에 대해 한 번 반복적으로 실행됩니다.
상관 된 하위 쿼리에서 하위 쿼리는 한 번 실행되고 결과 값을 외부 쿼리의 WHERE 절으로 대체합니다.
참고:외부 쿼리와 독립적으로 상관 된 하위 쿼리를 실행할 수 없습니다.
SQL Server(T-SQL)에서 상관 된 하위 쿼리를 이해하기 위해 두 개의 테이블을 만들어 보겠습니다.
제품 테이블:
MySQL
1
2
3
4
5
6
7
8
9
10
11
|
테이블 생성 ProductsTable
(
ID int Primary Key
이름을 이며(50),
격 int,
세부 정보 이며(150)
)
삽입 ProductsTable 값(1,’노트북’,30000,’노트북 사용자를 위한’)
삽입 ProductsTable 값(2,’세탁기’,20000,’화이트 컬러 프론트 짐 기계’)
삽입 ProductsTable 값(3,TV’,22000,’32 인치 HD LED TV’)
삽입 ProductsTable 값(4,’냉장고’,30000,’190Ltr 더블 도어 냉장고’)
|
판매 기록 테이블:
MySQL
1
2
3
4
5
6
7
8
9
10
11
12
13
|
테이블 생성 SaleRecordTable
(
Id int Primary Key Id,
제품 id int,
SoldQuantity int,
SaleDate Date
)
Insert into SaleRecordTable Values (2, 3, ’10-10-2016′)
Insert into SaleRecordTable Values (3, 5, ’10-10-2016′)
Insert into SaleRecordTable Values (2, 2, ’11-10-2016′)
Insert into SaleRecordTable Values (4, 6, ’11-10-2016′)
Insert into SaleRecordTable Values (2, 6, ’12-10-2016′)
Insert into SaleRecordTable Values (4, 6, ’13-10-2016′)
|
쿼리는 판매 레코드 테이블에서 판매 된 총 제품을 검색합니다. 하위 쿼리에서 총 제품 판매 데이터는 제품 테이블의 각 제품 id 에 대해 검색됩니다.
MySQL
1
2
3
4
|
–correlated subquery
Select Name,
(Select SUM(SoldQuantity) from SaleRecordTable where ProductId = ProductsTable.ID)’으로 총 판매량’
에서 ProductsTable
|
출력:
실행할 경우 하위를 독립적으로 당신은 다음과 같은 오류가 있습니다.
비 상관된 하위
아닌 상관된 하위는 하위하는 독립적인 외부 검색어입니다. 외부 쿼리와 독립적으로 상관되지 않은 하위 쿼리를 실행할 수 있습니다.
MySQL
1
2
3
4
|
–Non correlated query
Select ID, Name, Details
From ProductsTable
Where ID = (Select ProductID from SaleRecordTable Where SaleDate =’10-10-2016′ AND ProductID =2)
|
출력:
실행할 경우 하위를 독립적으로 그런 다음 이 시간에 당신을 얻지 않을 것이 어떤 오류가 있습니다. 출력은 다음과 같습니다.
이 문서에서 당신을 도와 상관관계를 이해하고 비 상관된 하위에서 SQL Server. 쿼리 및 피드백에 대한 의견을 게시하십시오. 읽어 주셔서 감사합니다.
The following two tabs change content below.
- Bio
- Latest Posts
Gyanendu Shekhar is a technology enthusiast. He loves to learn new technologies. His area of interest includes Microsoft technologies, Augmented reality, Virtual reality, unity3d and android development.
최근 게시물에 의해 Gyanendu Shekhar(모든)
- 사용하는 투명한 재료에 Unity3D-February8,2021
- 시작 UI Toolkit:Unity3D 자습서-December30,2020 년
- 사용하여 이벤트 Unity3D-May2,2020 년