SQL : operatorul APPLY

Lucrăm cu Microsoft SQL Server 2014 Enterprise (thanks, MSDNAA).

Operatorul APPLY.

Descărcaţi codulPentru vizualizare, folosiţi scrollbar-ul din josul blocului de cod.
USE [TSQLFundamentals2008];
/*
   instructiunea " SELECT * ":
     --tb. folosita doar la teste pe volume MICI de date;
     --poate fi folosita fara probleme cu EXISTS
       (vezi Itzik Ben-Gan, "T-SQL Fundamentals 2008",
        Microsoft Press, Redmond, 2009, pag. 143-144);
*/
SELECT *
FROM Sales.Customers AS [C]
CROSS JOIN
( -- tabel derivat autocontinut
  SELECT *
  FROM Sales.Orders AS [O]
) AS [A];
GO

SELECT *
FROM Sales.Customers AS [C]
CROSS APPLY--nu merge CROSS JOIN aici!
( -- tabel derivat dat de o subinterogare corelata
  SELECT *
  FROM Sales.Orders AS [O]
  WHERE [O].custid = [C].custid
) AS [A];
GO