Francisco Javier Cano created METAMODEL-133:
-----------------------------------------------

             Summary: Support multiple consecutive join statements
                 Key: METAMODEL-133
                 URL: https://issues.apache.org/jira/browse/METAMODEL-133
             Project: Apache MetaModel
          Issue Type: Improvement
            Reporter: Francisco Javier Cano


JOIN query:

{code}
SELECT c.name as category, l.name as language, COUNT(f.film_id) as films
FROM category c
INNER JOIN film_category fc ON c.category_id=fc.category_id
INNER JOIN film f on f.film_id=fc.film_id
INNER JOIN language l ON f.language_id = l.language_id
GROUP BY c.name,l.name;
{code}

Error:

{code}
org.apache.metamodel.query.parser.QueryParserException: Not capable of parsing 
ON token: fc.category_id INNER JOIN film f on f.film_id=fc.film_id INNER JOIN 
language l ON f.language_id = l.language_id
{code}

I performed some debugging:

{code}
FromItemParser.java
...
private SelectItem findSelectItem(String token, FromItem leftSide, FromItem 
rightSide) {
        // first look in the original query
        SelectItemParser selectItemParser = new SelectItemParser(_query, false);
        SelectItem result = selectItemParser.findSelectItem(token); -> TOKEN: 
fc.category_id INNER JOIN film f on f.film_id=fc.film_id INNER JOIN language l 
ON f.language_id = l.language_id
{code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to