출처 - https://gist.github.com/floriankraft/8b3720464318cd5cd9e2
SQL2
All nodes with a specific name
SELECT * FROM [nt:unstructured] AS node WHERE ISDESCENDANTNODE(node, "/search/in/path") AND NAME() = "nodeName"All pages below content path
SELECT * FROM [cq:Page] AS page WHERE ISDESCENDANTNODE(page ,"/search/in/path")All components of a specific type
SELECT * FROM [nt:unstructured] AS comp WHERE ISDESCENDANTNODE(comp, "/search/in/path") AND [sling:resourceType] = "componentType"All nodes where a property contains some String
SELECT * FROM [nt:unstructured] AS node WHERE ISDESCENDANTNODE(node, "/search/in/path") AND CONTAINS([propertyName], "someString")Date property of child node is greater than
SELECT page.* FROM [cq:Page] AS page INNER JOIN [nt:base] AS jcrcontent ON ISCHILDNODE(jcrcontent, page) WHERE ISDESCENDANTNODE(page, "/content/path/to/page") AND jcrcontent.[cq:lastModified] >= CAST("2015-06-02T00:00:00.000Z" AS DATE)Every page with specific name
SELECT * FROM [cq:Page] AS page WHERE ISDESCENDANTNODE(page, "/search/in/path") AND name() = "pageName"XPATH Property not empty
/jcr:root/content/path/to/page//nodeName[@propertyName != ""]Specific property contains
/jcr:root/content/path/to/page//nodeName[jcr:contains(@propertyName,'someValue')]Any property contains
/jcr:root/content/path/to/page//*[jcr:contains(., 'someValue')]AND operation (for more than one property)
/jcr:root/content/path/to/page//*[@firstPropertyName = "someValue", @secondPropertyName != "anotherValue"]Get all jcr:content nodes that have a specific resourceType have any property that contains a specific (text-) value have a "grandchild" node, which has a specific resourceType have a "grandchild" node, which has a property called "date" greater than "2012-06-01" and less than "2016-07-01" and order the result by the date property in descending order.
/jcr:root/content/path/to/node//element(*,cq:PageContent)[@sling:resourceType="someType" and jcr:contains(., "someValue") and */*/@sling:resourceType="anotherType" and */*/@date >= xs:dateTime("2012-06-01T00:00:00.000+02:00") and */*/@date <= xs:dateTime("2016-07-01T00:00:00.000+02:00")] order by pathto/grandchild/@date descending
'Develop > AEM' 카테고리의 다른 글
Query Packager (0) | 2020.11.17 |
---|---|
Oak Core Version 확인 (0) | 2020.10.06 |
AEM Package Builder (0) | 2018.07.02 |
AEM Mode Change Support (0) | 2018.06.21 |
AEM 6 SP2 - View (Tail) CQ Log Files (0) | 2016.11.28 |