hibernate的HQL如何写将多个字段合并成一个字段条件,例如如数据表中有"姓"和"名"两个字段,我如何写对应姓名的WHERE条件?

解决方案 »

  1.   

    oracle:
    select * from users where concat(lastname, firstname)='ZhangSan';
      

  2.   

    老大,hql和sql有区别吧?虽然你可以把crud都写成sql
      

  3.   

    from users where name=?String namestring="zhang"+"san";
    query.setString(0,namestring);
      

  4.   

    例如:
    在数据库中只存储name字段,而在pojo对象中除了定义name属性外,还定义firstName、lastName属性。
    执行save操作时,将firstName、lastName用分隔符存储成name属性的值。

    String name = firstName+","+lastName;
    user.setName(name);
    session.save(user);从数据库中读取数据的时候,hql语句:
    from User where name = 'zhangsan';
    然后再把这个name属性的值拆开即可。
      

  5.   

    from users where firstname=? and lastname=?
    再传2个参数进去
    query.setstring(0,“xxx”)
    query.setstring(1,“xxx”)
      

  6.   

    select * from users where lastname||firstname='ZhangSan'; 
      

  7.   

    用Hibernate取到jdbc对象来写标准的SQL吧,hql经常有些小问题