Het extract()
functie is verouderd
. Het is beter om XMLQuery()
.
U moet ofwel een standaardnaamruimte declareren die overeenkomt met die in het XML-document:
select XMLQuery('
declare default element namespace
"http://schemas.datacontract.org/2004/07/LCC.Crew.FAReserves.wsvc.Entities.FAReserves"; (: :)
/Bid/BidName/text()'
passing XMLType(xmlbidcontent)
returning content) as BidName
from employeebids
where EmployeeBidID = 100;
BIDNAME
--------------------------------------------------------------------------------
BAC
of (eenvoudiger maar minder robuust) gebruik een wildcard:
select XMLQuery('/*:Bid/*:BidName/text()'
passing XMLType(xmlbidcontent)
returning content) as BidName
from employeebids
where EmployeeBidID = 100;
BIDNAME
--------------------------------------------------------------------------------
BAC
db<>viool het tonen van uw oorspronkelijke zoekopdrachten en beide, met behulp van een CTE om de voorbeeld-CLOB-waarde te leveren.