Mysql Hibernate连接错误语法异常

Mysql Hibernate连接错误语法异常,mysql,sql,hibernate,select,join,Mysql,Sql,Hibernate,Select,Join,在我的项目(JavaStruts2,hibernate)中,我想使用Joinbetween 2表进行选择 Class User { private int userId; private String userName; private String dateOfBirth; } Class Bill { private int billId; private String dateOfBill; private Double moneyOfBill; privat

在我的项目(JavaStruts2,hibernate)中,我想使用Joinbetween 2表进行选择

Class User {
  private int userId;
  private String userName;
  private String dateOfBirth;
}

Class Bill {
  private int billId;
  private String dateOfBill;
  private Double moneyOfBill;
  private User user;
}
当我直接在localhost数据库中尝试通过sql时,它是正常的

Select * From user u JOIN bill b ON (b.userId=u.userId) Group by b.userId Order by Sum(b.moneyOfBill) asc;
但这是通过hibernate hql在我的程序中出现的错误

From User U JOIN Bill B ON (B.user.userId=U.userId) Group by B.user.userId Order by Sum(B.moneyOfBill) ASC;
eclipse控制台中的错误:

位于org.hibernate.hql.ast.QuerySyntaxException.convert(QuerySyntaxException.java:54) 位于org.hibernate.hql.ast.QuerySyntaxException.convert(QuerySyntaxException.java:47) 位于org.hibernate.hql.ast.ErrorCounter.throwQueryException(ErrorCounter.java:82) 位于org.hibernate.hql.ast.QueryTranslatorImpl.parse(QueryTranslatorImpl.java:281) 位于org.hibernate.hql.ast.QueryTranslatorImpl.docomfile(QueryTranslatorImpl.java:180) 位于org.hibernate.hql.ast.QueryTranslatorImpl.compile(QueryTranslatorImpl.java:134) 在org.hibernate.engine.query.HQLQueryPlan.(HQLQueryPlan.java:101) 在org.hibernate.engine.query.HQLQueryPlan.(HQLQueryPlan.java:80) 位于org.hibernate.engine.query.QueryPlanCache.getHQLQueryPlan(QueryPlanCache.java:94) 位于org.hibernate.impl.AbstractSessionImpl.getHQLQueryPlan(AbstractSessionImpl.java:156) 位于org.hibernate.impl.AbstractSessionImpl.createQuery(AbstractSessionImpl.java:135) 位于org.hibernate.impl.SessionImpl.createQuery(SessionImpl.java:1650)

请帮忙。谢谢大家!

试试这个:

SELECT U.userId, U.userName, U.dateOfBirth
FROM Bill B 
JOIN USER U 
GROUP BY U.userId, U.userName, U.dateOfBirth 
ORDER BY SUM(B.moneyOfBill) ASC;

感谢Saharsh Shah,但我只想从用户表中获取用户数据,而不是账单数据。我发现解决方案就在这里。此解决方案解决了我的问题: