sql >> Databáze >  >> RDS >> Sqlserver

Dotaz na xml na serveru SQL 2008

Váš ukázkový xml nemá Pages uzel. To znamená, že když FROM Pokud je vypočítána klauzule, vytvoří se křížové spojení mezi seznamem nula řádků a seznamem jednoho řádku. Výsledný produkt nemá žádné řádky, takže není nic SELECT ed, takže nic není INSERT vyd.

Pokud skutečně chcete vložit jeden řádek do BookDetails pro každý booksdetail uzel v příchozím xml, měli byste udělat něco jako

SELECT 
    ParamValues.PL.value('Pages[1]','int'),
    CAST(ParamValues.PLr.value('Description[1]','varchar(max)') AS text)
FROM 
    @xml.nodes('/booksdetail') as ParamValues(PL)

To znamená, že skartujte příchozí xml do booksdetail uzly a vytáhněte každý z .value z těchto řádků.




  1. Jak zálohovat a obnovit databázi MySQL pomocí NetBeans?

  2. PHP - MySQL - Smazat řádek

  3. Nelze nainstalovat plpython3u - postgresql

  4. Zvyšte diskovou skupinu VOTE v ASM pro upgrade GI 12.2