以前一直没有对关联子查询有过明确的概念,通过该查询可以明确关联子查询是如何执行的。
查询客户最新的五个订单(扩展),这个也非常经典
SELECT o1.CustomerID, o1.OrderID, o1.OrderDate
FROM Orders o1
WHERE o1.OrderDate IN(
SELECT TOP 5 o2.OrderDate
FROM Orders o2
WHERE o2.CustomerID = o1.CustomerID)
ORDER BY Custo
执行步骤:
(1)外部查询得到一条记录并将其传入到内部查询。
(2)内部查询基于传入的值执行。
(3)内部查询从其结果中把值传回到外部查询,外部查询使用这些值来完成其处理。
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/30146442/viewspace-2130854/
,如需转载,请注明出处,否则将追究法律责任。