0
我想所有山區的不同國家,但有時山將在一個以上的國家通過在這樣的字符串有多個國家代碼所示:XQuery在標記化後獲得不同的值?
<mountain id="mount-Kangchendzonga" country="NEP IND"></mountain>
我可以得到所有的不同使用
let $mts := doc("mondial.xml")/mondial//mountain
let $countries := distinct-values(data($mts/@country))
國家相關的字符串,但是這是不太正確的,因爲如果我有一個山與國家=「NEP IND」,另一個國家=「NEP」這會被認爲是不同的。
let $countries := distinct-values(concat(' ', data($mts/@country)))
let $countries := distinct-values(tokenize(data($mts/@country), "\s+"))
有沒有辦法,我可以先用空格分割一個國家的字符串,然後得到這些不同的值?我已經嘗試在連接和標記化數據上使用不同值,就像我上面顯示的那樣,但都會導致編譯器出錯。
或者在XQuery 3.1中: '($ mts/@ country! tokenize(。,'\ s +'))=> distinct-values()' – joewiz