views:

45

answers:

1

In my Oracle db I have records like this one:

<ROOT>
  <Event>
    <Type>sldkfvjhkljh</Type>
    <ID>591252</ID>
  </Event>
  <Data>
    <File>
      <Name>1418688.pdf</Name>
      <URL>/591252/1418688.pdf</URL>
    </File>
    <File>
      <Name>1418688.xml</Name>
      <URL>/591252/1418688.xml</URL>
    </File>
  </Data>
</ROOT>

I need to extract a value from the first <Name> tag. If I try:

Select xmltype(xml_data).extract('//Name[1]/text()').getStringVal() from MY_TABLE

I get:

1418688.pdf1418688.xml

Why is that and how can I get just 1418688.pdf?

Oracle Version:

Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - 64bi

+1  A: 

I think that both Name elements are #1 in this doc, because in their nodes they are each first. Try //File[1]/Name/text()

REW
That's what I need! Thank you!
parxier