ParentChild-Tabellen flachklopfen’ – Cross Apply

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