-1

今日、相関クエリと非相関クエリとして知られる SQL Server の機能について知りました。次に、ある疑問が頭に浮かびます。

SQL Serverの相関クエリとサブクエリの違いは何ですか? 相関サブクエリと非相関サブクエリは SQL Server に存在しますか?

はいの場合、これの違いと、それらの1つをどこで使用する必要がありますか? できれば簡単なイラストで概念を説明してください。

知りたいです。

4

1 に答える 1

6

相関サブクエリは、内部クエリが繰り返し実行されると見なされるように、メインの外部クエリによって参照される内部サブクエリです。

例:

USE DatabaseName;
GO
SELECT e.EmpID
FROM HumanResources.Emp e
WHERE e.ContactID IN
(
SELECT c.ContactID
FROM Person.Contact c
WHERE MONTH(c.ModifiedDate) = MONTH(e.ModifiedDate)
)
GO

非相関サブクエリは、外部クエリから独立したサブクエリであり、メインの外部クエリに依存せずに単独で実行できます。

例:

USE DatabaseName;
GO
SELECT e.EmpID
FROM HumanResources.Emp e
WHERE e.ContactID IN
(
SELECT c.ContactID
FROM Person.Contact c
WHERE c.Title = 'Mr.'
)
GO

詳しくはリンク先で。

于 2012-06-27T07:18:09.430 に答える