ParentChild-Tabellen flachklopfen’ – Cross Apply

In die­sem Bei­trag stelle ich Ihnen die Ver­wen­dung von CROSS und OUTER APPLY vor. Seit SQL Ser­ver 2005 exis­tiert der Apply Ope­ra­tor und ist in der Tat eine tolle Erwei­te­rung in T-SQL.
Soll­ten Sie die Hilfe von SQL Ser­ver zur Rate zie­hen, wird es im ers­ten Blick nicht ganz deut­lich, was der Apply Ope­ra­tor denn wirk­lich für einen Vor­teil bringt. Dort heißt es wört­lich:
Der APPLY-Ope­ra­tor ermög­licht Ihnen das Auf­ru­fen einer Tabel­len­wert­funk­tion für sämt­li­che Zei­len, die von einem äuße­ren Aus­druck einer Tabelle einer Abfrage zurück­ge­ge­ben wer­den. Die Tabel­len­wert­funk­tion dient als rechte Ein­gabe, der äußere /Ausdruck der Tabelle agiert als linke Ein­gabe. Die rechte Ein­gabe wird für jede Zeile aus der lin­ken Ein­gabe aus­ge­wer­tet, und die erstell­ten Zei­len wer­den für die end­gül­tige Aus­gabe kom­bi­niert. Bei der Liste der vom APPLY-Ope­ra­tor erstell­ten Spal­ten han­delt es sich um den Satz von Spal­ten in der lin­ken Ein­gabe, gefolgt von der Liste der von der rech­ten Ein­gabe zurück­ge­ge­be­nen Spal­ten.”
In die­ser Ver­öf­fent­li­chung stelle ich Ihnen einer der Mög­lich­kei­ten der Nut­zung von APPLY vor und zwar in mei­nen Augen das meist­be­nutzte Sze­na­rium. wei­ter­le­sen…