2

我想在 cts:element-values 本身中格式化 dateTime 。谁能帮我解决这个问题?

我有一个 dateTime 格式字符串 -

let $date-format := "[Y0001]-[M01]-[D01]T[h01]:[m01]:[s01].[f1]"

我想在这样的查询中使用它 -

cts:element-values(
  xs:QName($field),
  (), 
  ($direction), 
  cts:and-query((cts:collection-query("urn:iddn:collections:searchable"), cts:query($cts-query)))
  )

前提是 $field 的类型为 dateTime。

4

1 回答 1

2

您可以通过编写用户定义函数来完成此操作。UDF 作为 map/reduce 运行,因此即使使用大型数据集它们也非常快。我编写了一个示例 UDF 来创建基于 dateTime 数据的星期几方面。该示例基于 MarkLogic 6,但仍应在 MarkLogic 8 中工作。

好消息是 UDF 非常快。棘手的部分是您必须用 C++ 编写它。MarkLogic 文档的用户定义函数部分中的完整文档。

于 2015-10-14T19:41:49.777 回答