我使用查询根据属性cq:lastModified
和jcr:created
搜索用户
在特定的日期范围内
该查询应返回上次在daterange
之间修改的用户,如果最后修改的属性不存在,则应在该日期范围内返回jcr:created
。
请让我知道如何做到
在调试器中,我使用它,但请找到下面的路径。我想要OR而不是AND
path = /home/users
type=rep:User
1_daterange.property=jcr:created
1_daterange.lowerBound=2014-08-18
1_daterange.upperBound=2014-08-19
2_daterange.property=cq:lastModified
2_daterange.lowerBound=2014-08-18
2_daterange.upperBound=2014-08-19
/jcr:root/home/users//element(*, rep:User)
[
(@jcr:created > xs:dateTime('2014-08-18T00:00:00.000+05:30')
and @jcr:created < xs:dateTime('2014-08-19T00:00:00.000+05:30'))
***AND*** (@cq:lastModified > xs:dateTime('2014-08-18T00:00:00.000+05:30')
and @cq:lastModified < xs:dateTime('2014-08-19T00:00:00.000+05:30'))
]
&#39>&#39;&#39;&#39;粗体应该实际上是&#39;或&#39;
请帮忙
答案 0 :(得分:2)
使用groups
搜索多个媒体资源,group.p.or
指定OR
条件
path=/home/users
type=rep:User
group.1_daterange.property=jcr:created
group.1_daterange.lowerBound=2014-08-18
group.1_daterange.upperBound=2014-08-19
group.2_daterange.property=cq:lastModified
group.2_daterange.lowerBound=2014-08-18
group.2_daterange.upperBound=2014-08-19
group.p.or=true
在Query Builder API中,p.or中的p
是一个特殊的分隔符,表示后面的内容(在本例中为an或)是该组的参数,而不是该组的子预测,例如1_daterange。
如果没有给出p.or
,那么所有谓词都是ANDed
。
要了解有关查询的详情,请参阅this docs page。