我有以下館藏結構的XQuery排除下劃線某些文件在文件名
SCTA
--lectio1
--lectio1.xml
--reims_lectio1.xml
--sorb_lectio1.xml
--lectio2
--lectio2.xml
--reims_lectio2.xml
--sorb_lectio2.xml
現在使用XQuery,我只想搜索不包含一個「_」的文件。
以下查詢工作,但搜索所有文件。我想,使其只搜索lectio1.xml和lectio2.xml,不與文件進行修改「_」的
for $file in collection('/db/SCTA/')
for $p at $i in $file/tei:TEI//tei:p
let $param1:= request:get-parameter('param1', 'oyta')
let $pid := data($p/@xml:id)
let $fs := data($file/tei:TEI/tei:text/tei:body/tei:div/@xml:id)
let $title := $file/tei:TEI/tei:teiHeader/tei:fileDesc/tei:titleStmt/tei:title/text()
where ($p[contains(., $param1)])
order by $fs
return
<p>{$fs}: {$title}: {$pid}: {$p/text()}</p>
任何想法?
這非常有幫助。我一直在努力通過這種試錯方式。步驟1-5將是一大進步。 – Jeff
將3秒查詢轉換爲0.17s查詢。期待聚在一起:) – Jeff