Objectif
Extrait le contenu de l'élément ou la valeur de l'attribut d'un document XML et renvoie des données de type VARCHAR.
Syntaxe
Fonction scalaire |
---|
>>-extractVarchar----(--xmlobj--,--path--)--------------------->< |
Fonction de table |
---|
>>-extractVarchars----(--xmlobj--,--path--)-------------------->< |
Paramètres
Tableau 34. Paramètres des fonctions extractVarchar et extractVarchars
Paramètre | Type de données | Description |
---|---|---|
xmlobj |
XMLVARCHAR, XMLFILE ou XMLCLOB | Nom de la colonne. |
path | VARCHAR | Chemin d'emplacement de l'élément ou de l'attribut. |
Type de données renvoyé
VARCHAR(4K)
Nom de colonne renvoyé (fonction de table)
returnedVarchar
Exemple
Dans une base de données comportant plus de 1000 documents XML stockés dans la colonne ORDER de la table SALES_TAB, vous souhaitez rechercher tous les clients qui ont commandé des articles dont le prix calculé (ExtendedPrice) dépasse 2500,00. L'instruction SQL suivante utilise la fonction UDF d'extraction dans la clause SELECT :
SELECT extractVarchar(Order, '/Order/Customer/Name') from sales_order_view WHERE price > 2500.00
La fonction UDF extractVarchar() considère la colonne ORDER comme paramètre d'entrée et le chemin d'emplacement /Order/Customer/Name, comme identificateur de la clause SELECT. La fonction UDF renvoie les noms des clients. Avec la clause WHERE, la fonction d'extraction évalue uniquement les commandes dont le prix calculé est supérieur à 2500,00.