Marklogic 如果某些文档的值元素为空,则在日期字段上使用元素范围查询进行搜索

Marklogic 如果某些文档的值元素为空,则在日期字段上使用元素范围查询进行搜索,marklogic,marklogic-9,cts-search,Marklogic,Marklogic 9,Cts Search,我在modificationDateTime元素上创建了一个元素范围索引 我们的xml是这样的: 456789 2018-10-15T15:16:37.047Z ... 我使用以下查询获取2018年10月15日的15日甚至15至16日的文档: cts:search(/, ( cts:and-query(( cts:directory-query("/my-directory/", "1") , cts:element-range-query(xs:QNa

我在
modificationDateTime
元素上创建了一个元素范围索引

我们的xml是这样的:


456789
2018-10-15T15:16:37.047Z
... 
我使用以下查询获取2018年10月15日的
15日
甚至15至16日的文档:

cts:search(/, (
    cts:and-query((
       cts:directory-query("/my-directory/", "1")
       , cts:element-range-query(xs:QName("modificationDateTime"), ">=", xs:dateTime("2018-10-15T00:00:00.000+05:30"))
       , cts:element-range-query(xs:QName("modificationDateTime"), "<=", xs:dateTime("2018-10-15T23:59:59.000+05:30"))
    ))
)
cts:search(/(
cts:和查询((
目录查询(“/mydirectory/”,“1”)
,cts:元素范围查询(xs:QName(“modificationDateTime”),“>=”,xs:dateTime(“2018-10-15T00:00:00.000+05:30”))

,cts:element-range-query(xs:QName(“modificationDateTime”),“=”,xs:dateTime(“2018-10-15T00:00:00+05:30”),(),1),cts:element-range-query(xs:QName(“modificationDateTime”),“如果排除包含这些空元素的文档是一个选项,则可以将此not查询附加到您的查询中,并执行以下操作:

cts:not-query(
  cts:element-value-query(xs:QName("modificationDateTime"), "")
)

HTH!

如果排除包含这些空元素的文档是一个选项,您可以将此not查询附加到您的查询中,然后执行以下操作:

cts:not-query(
  cts:element-value-query(xs:QName("modificationDateTime"), "")
)

HTH!

Wow!有时解决方案就在那里,但看不到哈哈哈。在我们的大查询中有这个可能有点复杂,但感谢这对我来说应该有用。哇!有时解决方案就在那里,但看不到哈哈哈。在我们的大查询中有这个可能有点复杂,但感谢这对我来说应该有用。