0
votes

Oracle XML Query retourne null

J'ai besoin de convertir des données XML en une paire de champs / de valeur mais ma requête pour la valeur renvoie NULLS

J'ai un XML colonne de type à Oracle que j'essaie d'analyser pour obtenir le Paire de terrain / de valeur. Je ne sais pas si la structure du XML est la cause mais je ne peux pas extraire la valeur.

Voici un échantillon des données XML: xxx

J'essaie d'obtenir le montant posté renvoyé dans ma requête. xxx

La requête fonctionne sans erreur mais tout ce que je récupère, c'est null s.


1 commentaires

Quelle est la version de Oracle DB?


3 Réponses :


0
votes

Considérez une approche différente avec XMLeSence code> et ExtractValue () code> avec conditionnel dans l'expression XPath:

select
    extractValue(value(e), '//FIELD[@Type=''ACCOUNT BALANCES AND CORRESPONDING DATES'']') AS "amount"
from SALES_DATA x,
    table (xmlSequence(extract(xml, '/SaleFile'))) e


0 commentaires

0
votes

figuré en essayant juste des codes différents:

Sélectionnez XT. * De Sales_Data X, Xmltable ('/ SaleFile / champ' Passer x.seller_data COLONNES Field_Val Varchar2 (500) Path '/') XT

Cela m'a donné la liste des valeurs pour chaque nœud de champ.


1 commentaires

Vous avez dit que "... j'essaie d'obtenir le montant posté ...", c'est-à-dire une seule valeur.



0
votes

Vous avez peu d'éléments de champ, donc un filtre basé sur le nom NAME = "POSTED_PMT_AMT" sera utile.

SQL xxx


0 commentaires