2016-02-20 3 views
0

Я пытаюсь перечислить, сортировать и постраничной все папки и файлы в родительской node.This мой запрос выбора только папки, и это дает мне ожидаемый результат:JCR запрос все узлы под родительского узла

SELECT childFolder.[jcr:name], childFolder.[jcr:uuid] FROM [nt:base] AS parent LEFT OUTER JOIN [nt:folder] AS childFolder ON ISCHILDNODE(childFolder, parent) WHERE parent.[jcr:uuid] = 'a54ca11b-99f8-42cf-8348-8c0f3bc4f008' ORDER BY parent.[jcr:primaryType] DESC 

Затем я добавляю еще один присоединиться к файлам, но не возвращает никаких результатов:

LEFT OUTER JOIN [nt:file] AS childFile ON ISCHILDNODE(childFile, parent) 

Окончательный запрос:

SELECT childFolder.[jcr:uuid] FROM [nt:base] AS parent LEFT OUTER JOIN [nt:folder] AS childFolder ON ISCHILDNODE(childFolder, parent) WHERE parent.[jcr:uuid] = 'a54ca11b-99f8-42cf-8348-8c0f3bc4f008' ORDER BY parent.[jcr:primaryType] DESC 

1. Есть ли способ получить папки и файлы с одним запросом? 2.В первом запросе я пытаюсь получить [jcr: name], но он дает мне null.Как я могу получить имя узлов?

ответ

0

Это свой рабочий:

SELECT [jcr:primaryType], [jcr:created], [jcr:createdBy], [jcr:path] FROM [nt:file] 
UNION 
SELECT [jcr:primaryType], [jcr:created], [jcr:createdBy], [jcr:path] FROM [nt:folder] 
Смежные вопросы