Wofür brauchst Du denn einen Union?
Welche Informationen willst Du denn auslesen?

Das folgende Beispiel bringt Dir sq und die Label, Werte und Namen von allen 6 Leveln zurück

Code:
Select *
   From Xmltable('/trac' 
                 Passing Xmlparse(Document YourSchema.Gblxmlvar) 
                 Columns SQ VarChar(10)  Path '@sq',
                         Label1 VarChar(25)  Path './esr/fis/tag/@label', 
                         Value1 VarChar(125) Path './esr/fis/tag/@value',
                         Name1  VarChar(25)  Path './esr/fis/tag/@name',
                         Label2 VarChar(25)  Path './esr/fis/tag/tag/@label',
                         Value2 VarChar(125) Path './esr/fis/tag/tag/@value',
                         Name2  VarChar(25)  Path './esr/fis/tag/tag/@name',
                         Label3 VarChar(25)  Path './esr/fis/tag/tag/tag/@label', 
                         Value3 VarChar(125) Path './esr/fis/tag/tag/tag/@value',
                         Name3  VarChar(25)  Path './esr/fis/tag/tag/tag/@name',
                         Label4 VarChar(25)  Path './esr/fis/tag/tag/tag/tag/@label',
                         Value4 VarChar(125) Path './esr/fis/tag/tag/tag/tag/@value',
                         Name4  VarChar(25)  Path './esr/fis/tag/tag/tag/tag/@name',
                         Label5 VarChar(25)  Path './esr/fis/tag/tag/tag/tag/tag/@label', 
                         Value5 VarChar(125) Path './esr/fis/tag/tag/tag/tag/tag/@value',
                         Name5  VarChar(25)  Path './esr/fis/tag/tag/tag/tag/tag/@name',
                         Label6 VarChar(25)  Path './esr/fis/tag/tag/tag/tag/tag/tag/@label',
                         Value6 VarChar(125) Path './esr/fis/tag/tag/tag/tag/tag/tag/@value',
                         Name6  VarChar(25)  Path './esr/fis/tag/tag/tag/tag/tag/tag/@name')
                 As Result;
Birgitta