select t from (select b,o.categaryId from Brand as b inner join BrandCateRef as o on b.id=o.brandId) as t where t.categaryId = ?
出现这样的错误
unexpected token: ( near line 1, column 15但是这个语句我独立在mysql中运行是没有问题的,请教各位大哥帮忙看看
要怎么修改才正确呢?纳闷中.....

解决方案 »

  1.   

    你是用的 SQL 还是HQL? SQL的话 那这问题就不知道了 HQL的话 你这写法不对
      

  2.   

    我用的是HQL...,写法不对?请问应该怎样呢?
      

  3.   

    如果是hibernate最好别这么用,通过映射配置来解决多表联合查询的问题。如果你要这么写就直接用sql。hibernate也提供了直接运行sql的接口了
      

  4.   

    请问hibernate怎样直接运行sql呢,小弟初学,什么都不懂...谢谢
      

  5.   

    最好是写HQL语句,如果HQL语句不行,就直接在hibernate里面用JDBC也是一样的
      

  6.   

    SQLQuery query = session.createSQLQuery(SQL).addEntity(entity.class);
    return query.list();
      

  7.   

    可以参考hibernate的帮助文档,我记着好像有中文的
      

  8.   

    楼主应该写成HQL,用好Hibernate时,SQl语句中的不是表名,是对象名