首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用SQL from JCR从子名称中检索父名称

如何使用SQL from JCR从子名称中检索父名称
EN

Stack Overflow用户
提问于 2014-09-06 01:01:32
回答 2查看 1.5K关注 0票数 0

我在JCR repo中有以下节点结构。在给定子节点(12345)的情况下,我正在努力检索父节点(789)。

/12345/items/789

代码语言:javascript
复制
I have tried:
SELECT parent.* 
FROM [nt:base] AS parent 
INNER JOIN [nt:base] AS child ON ISCHILDNODE(child,parent)
WHERE name(child) = '789'

但是我一直收到"This query result包含多个选择器“的结果。

我必须使用sql或jcr-sql2来做这件事,例如,我不想使用java来检索父对象的父对象。

提前感谢

EN

回答 2

Stack Overflow用户

发布于 2014-09-08 14:19:41

正如Randall上面提到的--查询是完全有效的。

我不会猜到的,但由于您将其标记为Magnolia,因此我假定您尝试通过AdminCentral/Dev/JCRQueries应用程序执行此查询。此应用程序不支持选择器。这就是这里的全部问题。如果你通过groovy控制台使用类似下面的脚本运行它,它将工作得很好。

代码语言:javascript
复制
query = "SELECT parent.*  FROM [nt:base] AS parent  INNER JOIN [nt:base] AS child ON ISCHILDNODE(child,parent) WHERE name(child) = '789'"
MgnlContext.getJCRSession("your_workspace").workspace.queryManager.createQuery(query,"JCR-SQL2").execute()

HTH,Jan

票数 3
EN

Stack Overflow用户

发布于 2014-09-06 03:26:44

JCR SQL语言不支持联接。

另一方面,JCR-SQL2语言确实支持joins。实际上,我刚刚尝试了这个JCR-SQL2查询,它在ModeShape中工作得很好。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25690708

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档