English 中文(简体)
selecting one value out of an xml column
原标题:

I have a particularly troublesome xml column to query data from. The schema is fixed by the Quebec Ministry of Revenue so "it is what it is"

The important part of the query looks like this:

with XMLNAMESPACES(default  http://www.mrq.gouv.qc.ca/T5 )
select xmldata.value( (//Groupe02/*/Montants/B_PrestREER_FERR_RPDB)[1] ,  decimal(16,2) );

The wildcard between Groupe02 and Montants could be any one of A D R or T. (that s right one letter element names)

Trouble is I need to query to only select A, D or R nodes but not T nodes. as a first guess I tried:

with XMLNAMESPACES(default  http://www.mrq.gouv.qc.ca/T5 )
select @x.value( (//Groupe02/A|D|R/Montants/B_PrestREER_FERR_RPDB)[1] ,  decimal(16,2) );

but that failed with the error "The XQuery syntax union is not supported"

What other possible ways are there to make such a query.

问题回答

I think using [name()!= T ] might work. E.g.

select @x.value("(//Groupe02/*[name()!= T ]/Montants/B_PrestREER_FERR_RPDB)[1]",  decimal(16,2) );




相关问题
how to represent it in dtd?

I have two element action and guid. guid is a required field when action is add. but when action is del it will not appear in file. How to represent this in dtd ?

.Net application configuration add xml-data

I need to add xml-content to my application configuration file. Is there a way to add it directly to the appSettings section or do I need to implement a configSection? Is it possible to add the xml ...

XStream serializing collections

I have a class structure that I would like to serialize with Xstream. The root class contains a collection of other objects (of varying types). I would like to only serialize part of the objects that ...

MS Word splits words in its XML format

I have a Word 2003 document saved as a XML in WordProcessingML format. It contains few placeholders which will be dynamically replaced by an appropriate content. But, the problem is that Word ...

Merging an XML file with a list of changes

I have two XML files that are generated by another application I have no control over. The first is a settings file, and the second is a list of changes that should be applied to the first. Main ...

How do I check if a node has no siblings?

I have a org.w3c.dom.Node object. I would like to see if it has any other siblings. Here s what I have tried: Node sibling = node.getNextSibling(); if(sibling == null) return true; else ...

Ordering a hash to xml: Rails

I m building an xml document from a hash. The xml attributes need to be in order. How can this be accomplished? hash.to_xml

热门标签