所以我想在for
子句中插入函數distint-nodes
(請參閱下面的內容)。我爲此使用BaseX。XQuery不同節點的使用
這是我的代碼:
<autores>{
for $a in doc("libros.xml")//libro
return
<autor>
<nombre>{
for $b in $a/autor
return concat($b/nombre,' ',$b/apellido)
}
</nombre>
{
for $c in doc("libros.xml")//libro
where $c/autor = $a/autor
return $c/titulo
}
</autor>
}
</autores>
我想用第一此功能,所以它只返回我<autor/>
元素的唯一實例:
for $b in distinct-nodes($a/autor)
return concat($b/nombre,' ',$b/apellido)
,但我得到以下錯誤(BaseX查詢信息):
Error: Stopped at G:/Pruebas XML/XML/xqueryLibros.xq, 6/31: [XPST0017] Unknown function: fn:distinct-nodes.
爲什麼此功能未知存在?有什麼我失蹤?
編輯:我的目的是讓元素$a/autor
的唯一實例,其中$a/autor/nombre
和$a/autor/apellidos
文本值是相同的
<autores>
<autor>
<nombre>W. Stevens</nombre>
<titulo>TCP/IP Ilustrado</titulo>
<titulo>Programación Avanzada en el entorno Unix</titulo>
</autor>
<autor>
<nombre>W. Stevens</nombre>
<titulo>TCP/IP Ilustrado</titulo>
<titulo>Programación Avanzada en el entorno Unix</titulo>
</autor>
<autor>
<nombre>Serge Abiteboul Peter Buneman Dan Suciu</nombre>
<titulo>Datos en la Web</titulo>
</autor>
<autor>
<nombre/>
</autor>
</autores>
你說此功能存在。誰告訴你的? –
然後我誤解了fn和functx之間的區別,可能是這樣嗎? – JD0001
......對,就是這樣。 –