집 >데이터 베이스 >MySQL 튜토리얼 >SQL에서 CROSS APPLY와 OUTER APPLY를 언제 사용해야 합니까?
SQL에서 CROSS APPLY와 OUTER APPLY의 실제 적용 시나리오
SQL의 OUTER APPLY 및 CROSS APPLY 연산자는 유연한 데이터 작업과 복잡한 쿼리 실행을 제공합니다. 다음은 각 연산자를 언제 사용해야 하는지 보여주는 실제 사용 사례입니다.
크로스 적용
<code class="language-sql">SELECT pr.name, pa.name FROM sys.procedures pr OUTER APPLY (SELECT TOP 2 * FROM sys.parameters pa WHERE pa.object_id = pr.object_id ORDER BY pr.name) pa ORDER BY pr.name, pa.name </code>
<code class="language-sql">SELECT * FROM sys.dm_exec_query_stats AS qs CROSS APPLY sys.dm_exec_query_plan(qs.plan_handle)</code>
외부 적용
<code class="language-sql">SELECT number, doubled_number, doubled_number_plus_one FROM master..spt_values CROSS APPLY (SELECT 2 * CAST(number AS BIGINT)) CA1(doubled_number) CROSS APPLY (SELECT doubled_number + 1) CA2(doubled_number_plus_one) </code>
<code class="language-sql">CREATE TABLE T ( Id INT PRIMARY KEY, Foo1 INT, Bar1 INT, Foo2 INT, Bar2 INT, Foo3 INT, Bar3 INT );</code>
VALUES 구문 사용(SQL Server 2008):
<code class="language-sql">SELECT Id, Foo, Bar, GrpName FROM T CROSS APPLY (VALUES('1', Foo1, Bar1), ('2', Foo2, Bar2), ('3', Foo3, Bar3)) V(GrpName, Foo, Bar); </code>
위 내용은 SQL에서 CROSS APPLY와 OUTER APPLY를 언제 사용해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!