因为我要用UNION,1对于我来说是个标识,告诉我一个查询的结果到哪里为止。

解决方案 »

  1.   

    你直接把这个sql拿到hibernate中用就行了,hibernate兼容sql查询。
      

  2.   

    对啊,可以用createQuery来做的
      

  3.   

    楼主你好好看过hibernate文档没有?9.3.6. 使用本地SQL的查询
    你可以使用createSQLQuery()方法,用SQL来表达查询。你必须把SQL别名用大括号包围起来。 List cats = session.createSQLQuery(
        "SELECT {cat.*} FROM CAT {cat} WHERE ROWNUM<10",
        "cat",
        Cat.class
    ).list();
    List cats = session.createSQLQuery(
        "SELECT {cat}.ID AS {cat.id}, {cat}.SEX AS {cat.sex}, " +
               "{cat}.MATE AS {cat.mate}, {cat}.SUBCLASS AS {cat.class}, ... " +
        "FROM CAT {cat} WHERE ROWNUM<10",
        "cat",
        Cat.class
    ).list()
    和Hibernate查询一样,SQL查询也可以包含命名参数或者顺序参数。