title: with-clause referenced two different from-clause elements in hSQL
body: <p>Getting the exception:</p>
  
  <blockquote>
    <p>With-clause referenced two different from-clause elements</p>
  </blockquote>
  
  <p>When executing the query below with the following entities:</p>
  
  <pre><code>@Entity
  public class A {
  
      @Id
      private Long id;
  
      @Column(name = "A_ID")
      private Long aId;
  
      @ManyToOne(fetch=FetchType.LAZY)
      @JoinColumn(name = "A_ID")
      private B b;
  }
  
  @Entity
  public class B {
  
      @Id
      private Long id;
  
      @OneToMany(fetch=FetchType.LAZY, cascade=CascadeType.ALL)
      @JoinColumn(name="C_ID" , referencedColumnName="ID")
      private List&lt;C&gt; c;
  }
  
  @Entity
  public class C {
  
      @Id
      private Long id;
  
      @Column(name="C_ID")
      private Long cId;
  
      @Column
      private String addType;
  }
  </code></pre>
  
  <p>My HQL Query is: </p>
  
  <pre><code>SELECT * FROM A a 
  INNER JOIN a.b b ON a.aId=b.id 
  LEFT OUTER JOIN b.c c ON b.id=c.cId AND c.addType='PermanentAddress' 
  LEFT OUTER JOIN b.c d ON b.id=d.cId AND d.addType='ResidentialAddress'
  LEFT OUTER JOIN b.c e ON b.id=e.cId AND e.addType='OfficeAddress'
  WHERE a.id  =:id
  </code></pre>
  
  <p>The exception that I get is:</p>
  
  <blockquote>
    <p>Caused by: org.hibernate.hql.internal.ast.QuerySyntaxException: with-clause referenced two different from-clause elements 
          at org.hibernate.hql.internal.ast.QuerySyntaxException.convert(QuerySyntaxException.java:91)
    ~[hibernate-core-4.3.6.Final.jar:4.3.6.Final]
          at org.hibernate.hql.internal.ast.ErrorCounter.throwQueryException(ErrorCounter.java:109)
    ~[hibernate-core-4.3.6.Final.jar:4.3.6.Final]
          at org.hibernate.hql.internal.ast.QueryTranslatorImpl.analyze(QueryTranslatorImpl.java:284)
    ~[hibernate-core-4.3.6.Final.jar:4.3.6.Final]
          at org.hibernate.hql.internal.ast.QueryTranslatorImpl.doCompile(QueryTranslatorImpl.java:206)
    ~[hibernate-core-4.3.6.Final.jar:4.3.6.Final]
          at org.hibernate.hql.internal.ast.QueryTranslatorImpl.compile(QueryTranslatorImpl.java:158)
    ~[hibernate-core-4.3.6.Final.jar:4.3.6.Final]
          at org.hibernate.engine.query.spi.HQLQueryPlan.(HQLQueryPlan.java:126)
    ~[hibernate-core-4.3.6.Final.jar:4.3.6.Final]
          at org.hibernate.engine.query.spi.HQLQueryPlan.(HQLQueryPlan.java:88)
    ~[hibernate-core-4.3.6.Final.jar:4.3.6.Final]
          at org.hibernate.engine.query.spi.QueryPlanCache.getHQLQueryPlan(QueryPlanCache.java:167)
    ~[hibernate-core-4.3.6.Final.jar:4.3.6.Final]
          at org.hibernate.internal.AbstractSessionImpl.getHQLQueryPlan(AbstractSessionImpl.java:301)
    ~[hibernate-core-4.3.6.Final.jar:4.3.6.Final]
          at org.hibernate.internal.AbstractSessionImpl.createQuery(AbstractSessionImpl.java:236)
    ~[hibernate-core-4.3.6.Final.jar:4.3.6.Final]
          at org.hibernate.internal.SessionImpl.createQuery(SessionImpl.java:1800)
    ~[hibernate-core-4.3.6.Final.jar:4.3.6.Final]
          at org.hibernate.jpa.spi.AbstractEntityManagerImpl.createQuery(AbstractEntityManagerImpl.java:328)
    ~[hibernate-entitymanager-4.3.6.Final.jar:4.3.6.Final]
          ... 187 common frames omitted</p>
  </blockquote>