奖金简单搜索示例(另一种阅读方式)
MarkLogic 首先是搜索引擎,所以让我们使用两种不同的方法来搜索这个文档。
使用搜索:search()
这样可以了解如何使用 search:search()
来开发搜索应用程序。该库提供类似 Google 的搜索结果,可能会加快你开发简单的搜索工具的速度。可在此处找到更多信息和更深入的潜水。
xquery version "1.0-ml";
import module namespace search = "http://marklogic.com/appservices/search"
at "/MarkLogic/appservices/search/search.xqy";
(: What is search without a keyword? :)
let $term := "very simple"
return search:search($term)
结果看起来有点令人困惑,但你可以看到它返回一个结果,我们的示例文档。
使用 cts:search()
更高级的搜索情况可能需要更精细的搜索功能。这只是为了激发你对搜索中可用内容的兴趣。更多详细信息可在此处找到 。
xquery version "1.0-ml";
(: What is search without a keyword? :)
let $term := "very simple"
(: Complex queries can be made from individual cts queries. Here, we just have one simple query :)
let $query := cts:word-query($term,"case-insensitive")
(: Return the documents that match the query :)
return cts:search(fn:doc(),$query)
这是一个非常简单的例子。顺便说一句,如果我们想要取回匹配文件的 URI 而不是文件本身,我们可以将这个片段的最后一行改为 -
return
for $result in cts:search(fn:doc(),$query)
return fn:base-uri($result)