Attualmente ho questo codice che memorizza XML in una colonna di tipo XML chiamata data, in una tabella denominata Archiviazione.Distruzione di XML dalla colonna della tabella in una vista in SQL Server
CREATE TABLE Storage
(
ID INT IDENTITY(1,1) PRIMARY KEY,
data XML NOT NULL
)
GO
INSERT INTO Storage(data)
VALUES('<footballteams>
<team manager="Benitez">
<name>Liverpool</name>
<ground>Anfield</ground>
</team>
<team manager="Mourinho">
<name>Chelsea</name>
<ground>Stamford Bridge</ground>
</team>
<team manager="Wenger">
<name>Arsenal</name>
<ground>Highbury</ground>
</team>
</footballteams>');
vorrei creare una vista denominata Football Guarda che brandelli i dati e li visualizza in forma: FootballView (TeamName, Dirigente, terra).
Ho ridotto a zero i documenti completi utilizzando il metodo .nodes() nelle colonne della tabella, ma sembra essere più difficile quando si crea una vista (ho i miei motivi per usare le viste). Il problema è che in precedenza ho appena chiamato .nodes su una variabile @input che era DECLARE come xml = 'xmlcontent' ma con le visualizzazioni non è possibile farlo e voglio analizzare l'XML contenuto nella colonna della tabella Storage.
Qualche idea? Grazie in anticipo.
EDIT:
In precedenza, se avessi triturato in tabelle questo sarebbe il codice che uso:
SELECT
TeamName = Foot.value('(name)[1]', 'varchar(100)'),
Manager = Foot.value('(@manager)', 'varchar(100)'),
Ground = Foot.value('(ground)[1]', 'varchar(100)')
FROM
@input.nodes('/footballteams/team') AS Tbl(Foot)
EDIT2: Questa è l'uscita mi aspetto.
Puoi pubblicare il codice che hai usato per distruggere le colonne e anche come hai provato a convertirlo. –
Vedere la modifica sopra. – themenace92
Quale output ti aspetti? – Kane