我已經根據xml中的一個屬性刪除了重複項。 我的問題是需要刪除重複的比較多個屬性列。Marklogic:使用XQuery刪除重複項
Input
<Id>
<tbl_Keysight_Input Auto_Id="66365" Product_No="10070D" Product_Option="10070D"/>
<tbl_Keysight_Input Auto_Id="66365" Product_No="10070D" Product_Option="10070D"/>
<tbl_Keysight_Input Auto_Id="66365" Product_No="10070D1" Product_Option="10070D"/>
<tbl_Keysight_Input Auto_Id="66365" Product_No="10070D1" Product_Option="10070D"/>
<tbl_Keysight_Input Auto_Id="66365" Product_No="10070D" Product_Option="10070D"/>
</Id>
Expected output:
<Id>
<tbl_Keysight_Input Auto_Id="66365" Product_No="10070D" Product_Option="10070D"/>
<tbl_Keysight_Input Auto_Id="66365" Product_No="10070D1" Product_Option="10070D"/>
</Id>
請爲我的要求提供xquery。
以下查詢僅基於Auto_id。
for $d in distinct-values(xdmp:directory("/documents/","1")//Id/tbl_Keysight_Input/@Auto_Id)
let $items := xdmp:directory("/documents/","1")/id/tbl_Keysight_Input[@Auto_Id = $d]
order by $d
return
for $i in $items [position() le 1]
return $i
使用[':fn:deep-equal()'](https://docs.marklogic.com/fn:deep-equal)? – har07
@ har07它只返回true和false語句,但我需要結果 – Antony
不能應用與*基於一個屬性*刪除重複條目時使用的相同策略嗎?只有現在使用'deep-equal()'來確定2個元素之間的相等(而不是比較一個屬性).. – har07