【问题标题】:Like statement in marklogic像marklogic中的语句
【发布时间】:2019-10-02 13:34:27
【问题描述】:

我是marklogic 的新手,不太确定如何在marklogic 查询中编写like 语句...谁能告诉我如何在marklogic 查询中编写Like 语句(与sql 相同)?我想将参数字符串传递给函数,并希望所有字符串作为包含参数字符串的输出..

【问题讨论】:

  • 欢迎来到stackoverflow!你试过什么?您是否查看过docs.marklogic.com/sql:like 用户指南中的语法和示例?您是否尝试过搜索标记为 marklogic 的其他问题? stackoverflow.com/questions/tagged/marklogic
  • 我认为一个例子会有所帮助。通常 LIKE 在关系数据库中效率很低,并且在其他技术更好时使用。例如,人们经常使用 LIKE 来进行单词匹配,而 MarkLogic 有更好的文本匹配库。有时人们使用 LIKE 来匹配标记中的子字符串,为此 MarkLogic 有通配符。
  • 谢谢...刚刚浏览了marklogic引用并找到了答案...我们可以使用 cts:element-value-query("tagName", "*textToSearch*",("wildcard" )...这对我有用.. :)

标签: marklogic


【解决方案1】:

在 MarkLogic 中有多种查询数据的方法,但我将假设 CTS 或 SPARQL。

CTShttps://docs.marklogic.com/cts.wordQuery

cts.search(
    cts.wordQuery("MarkLogic Cor?oration*",
                   [""wildcarded""]));

SPARQL

select ?s ?p ?o
where{
  ?s ?p ?o 
     filter contains(?o,"New South")
     .filter regex(?o,"New")
}
limit 10

我已经给出了 contains 和正则表达式,但发现正则表达式的工作速度更快,

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-08-18
    • 2020-07-22
    • 2023-03-27
    • 1970-01-01
    • 2017-01-01
    • 1970-01-01
    • 2017-01-17
    相关资源
    最近更新 更多