首页 > 解决方案 > JCR-SQL2 查询子节点

问题描述

我需要在 JCR 中找到一个条目,其中包含日期的节点列表中的 Date 与我的条件匹配。数据结构是

- Event1 -- Dates --- 0 ---- startDate: xyz ---- endDate: xyz --- 1 ---- startDate: xyz ---- endDate: xyz - Event1 -- Dates --- 0 ---- startDate: xyz ---- endDate: xyz --- 1 ---- startDate: xyz ---- endDate: xyz

数据结构

所以我需要遍历所有节点,现在我需要选择调用的子节点并DATE遍历它并检查时间戳属性。如果时间戳符合我的标准,则返回整个节点。

这是一次失败的尝试:

select p.date from [mgnl:contact] as p where p.[startDate] > CAST('2010-01-01T00:00:00.000+02:00' as date)

我希望在 2010 年 1 月 1 日之后获取所有条目。

我可以通过从 jcr 中获取所有内容并在 Java 中进行过滤来做到这一点。在 JCR-SQL2 中,我什至不知道从哪里开始。

标签: sqljcrmagnoliajcr-sql2

解决方案


我猜它不起作用,因为 p.date 不是给定节点类型的直接属性。我认为如果您将其更改为mgnl:contentNode.

也试一试:

select * from [mgnl:contact] where [startDate] > cast('2010-01-01T00:00:00.000+02:00' as date)

干杯,

高温下,


推荐阅读