Я не думаю, что вы можете манипулировать результирующим набором с использованием синтаксиса jcr sql2
, хранимые процедуры обычно используются для манипулирования результирующими наборами, похожими на PL / SQL, и я не нашел никакой ссылки на это в jcr docs.На самом деле, насколько мне известно, jcr даже не поддерживает агрегатные функции, такие как MAX()
, COUNT()
и т. Д.
Хакерский способ сделать это -> вам, вероятно, придется сначала выполнить внутренний запрос, чтобы получить всекомпоненты в /apps
, измените набор результатов вручную (вычеркнув /apps
) и передайте его во внешний запрос.
SELECT * FROM [nt:unstructured] AS comp
WHERE ISDESCENDANTNODE(comp, "/content/prj")
AND [sling:resourceType] IN ("prj/components/content/accordion","prj/components/content/breadcrumb")
Чтобы ускорить процесс, вы можете использовать текстовые редакторы, такие как notepad ++, который поможет вамс помощью выбора блока (Ctrl + Alt + Shift, а затем щелкните левой кнопкой мыши и перетащите, чтобы выделить), чтобы удалить / apps, добавить начало / конец двойных кавычек, запятую и заменить символ новой строки, чтобы получить все в одной строке и построить общий запрос.
Было бы интересно узнать, что думают другие, и можно ли это сделать только с помощью синтаксиса jcr sql2
.