请问这个query要如何写呢?能给个例子否?

解决方案 »

  1.   

    Criteria criteria = session.createCriteria(User.class);
    criteria.add( Expression.like("firstname", "Max") );
    List result = criteria.list();
      

  2.   

    晕,我要的是查询字段里带有'%'这个字段的相关字段,但是你只要在criteria.add( Expression.like("firstname", "%") );这样的话不是查出所有的内容了啊
      

  3.   

    要看是什么数据库咯,mysql用这种方法可以:query.setString(0,"%\\%%").list()
      

  4.   

    hibernate3
    list = session.createCriteria(PopedomUser.class).add(
    Restrictions.like("gradeCode", gradeCode + "%")).addOrder(
    Order.asc("gradeCode")).list();
      

  5.   

    "from xx x where x.feild like '%mmmmmmmmmm%'"
      

  6.   

    写法完全参照java关键符的处理方法就可以了
      

  7.   

    Criteria criteria = session.createCriteria(User.class);
    criteria.add( Expression.eq("firstname", "Max") );
    List result = criteria.list();
      

  8.   

    Criteria criteria = session.createCriteria(User.class);
    criteria.add( Expression.eq("firstname", "%") );
    List result = criteria.list();
      

  9.   

    你可以使用org.hibernate.criterion.Order来为查询结果排序。 List cats = sess.createCriteria(Cat.class)
        .add( Restrictions.like("name", "F%")
        .addOrder( Order.asc("name") )
        .addOrder( Order.desc("age") )
        .setMaxResults(50)
        .list();
    List cats = sess.createCriteria(Cat.class)
        .add( Property.forName("name").like("F%") )
        .addOrder( Property.forName("name").asc() )
        .addOrder( Property.forName("age").desc() )
        .setMaxResults(50)
        .list();这个是hiberante3文档里面这样写的
      

  10.   

    兄弟们,不是这个意思哈,我的意思是等同于如下的查询语句select * from table1 a where a.col1 like '%\%%' escape '\'这个查询的意思就是要查出table1表中的col1字段内容中包含有%号的内容的记录啊,
    我现要连的数据库是sql server 的,在hibernate中要如何做到这样的查询?
      

  11.   

    查查有没有类似String中的indexof()的函数,如果字段中包含“%”(indexof()后的值不为-1),则显示。
      

  12.   

    使用预处理语句
    然后在query.set**(0,"%"+userName+"%")hql里只写成like ?
    %在set里设进去%与里边不要加单引号
      

  13.   

    SQL Server 的写法 '%[%]%'  , 不知道其他行不