如果我在XML文檔中有幾個Section
元素,我用什麼XQuery獲取所有name
值的列表?XQuery獲取屬性列表
<Section name="New Clients" filePath="XNEWCUST.TXT" skipSection="False">
如果我在XML文檔中有幾個Section
元素,我用什麼XQuery獲取所有name
值的列表?XQuery獲取屬性列表
<Section name="New Clients" filePath="XNEWCUST.TXT" skipSection="False">
在XPath 2.0(這是的XQuery的一個子集)一種將使用下面的表達式來獲得「名稱」的所有的字符串值的序列屬性「部分」元素:
for $attr in //Section/@name
return string($attr)
請注意使用「//」的縮寫通常是不好的做法,因爲這可能需要一個整體(子樹)待運行。在文檔結構已知的任何情況下,應該優選更具體的XPath表達式(例如使用特定位置步驟的表達式)。
/Section/@name
這將選擇XML文檔的唯一頂級元素的「name」屬性節點,如果頂部元素恰巧成爲「部分」元素。 OP要求的是XML文檔中* all *「Section」元素的「名稱」屬性的*字符串值序列*。 – 2008-11-27 17:48:28
//Section/@name
或
//Section/@name/string(.)
的字符串值
謝謝,我所需要的是一個返回concat(字符串($ attr),「 - 」)來分隔值。 – ProfK 2008-11-27 18:15:57