相关子查询是指引用了外部查询中出现的表的列的子查询。这就意味着子查询要依赖于外部查询,不能独立地调用它。在逻辑上,子查询会为每个外部行单独计算一次。
例:
SELECT custid,orderid,orderdate,empid
FROM dbo.Orders AS O1
WHERE orderid =
(SELECT MAX(O2.orderid)
FROM dbo.Orders AS O2
WHERE O2.custid=O1.custid);
相关子查询是指引用了外部查询中出现的表的列的子查询。这就意味着子查询要依赖于外部查询,不能独立地调用它。在逻辑上,子查询会为每个外部行单独计算一次。
例:
SELECT custid,orderid,orderdate,empid
FROM dbo.Orders AS O1
WHERE orderid =
(SELECT MAX(O2.orderid)
FROM dbo.Orders AS O2
WHERE O2.custid=O1.custid);