javajcrmagnoliajcr-sql2

Using the IN clause with Java's JCR-SQL2


I am trying to use an 'IN' clause with Magnolia with JCR-SQL2:

SELECT * FROM [mgnl:page]
WHERE [mgnl:template] IN (
    "context:pages/template-type-1", 
    "context:pages/template-type-2"
)

However I'm receiving this error:

SELECT * FROM [mgnl:page]
WHERE [mgnl:template] IN(*)("context:pages/template-type-1","context:pages/template-type-2");
expected: ., =, <>, <, >, <=, >=, LIKE, IS, NOT

Is this caused by the fact my implementation of the JCR does not support the IN clause?


Solution

  • I made a quick research about it and turned out that the in JCR specification WHERE IN clause is not listed and its possible with some extensions.

    http://download.oracle.com/otndocs/jcp/content_repository-2.0-fr-oth-JSpec/

    So, you already answered yourself that its not supported in the version you are currently using.

    Cheers,