是否有SQL2
查询与以下XPath
查询相同:
/jcr:root/content/ancestor//parent/jcr:content
它应该返回以下节点,例如:
/content/ancestor/a/b/c/parent/jcr:content
/content/ancestor/a/parent/jcr:content
/content/ancestor/parent/jcr:content
但不是以下节点:
/content/xxx/a/b/c/parent/jcr:content
/content/xxx/a/parent/jcr:content
/content/xxx/parent/jcr:content
答案 0 :(得分:1)
以下应该工作:
SELECT * FROM [nt:base] AS s
INNER JOIN [nt:base] AS parent
ON ISCHILDNODE(s, parent)
WHERE
ISDESCENDANTNODE(s, [/content/ancestor]) AND
NAME(parent) = 'parent' AND
NAME(s) = 'jcr:content'
如果s
的类型为cq:PageContent
且parent
的类型为cq:Page
,您可以使用此信息来加快查询速度:
SELECT * FROM [cq:PageContent] AS s
INNER JOIN [cq:Page] AS parent
ON ISCHILDNODE(s, parent)
WHERE
ISDESCENDANTNODE(s, [/content/ancestor]) AND
NAME(parent) = 'parent' AND
NAME(s) = 'jcr:content'
答案 1 :(得分:-2)
您可以使用crxde 中的“查询工具”轻松地将xpath转换为sql2,反之亦然