关于在HQL中的模糊查询问题

来自:2007-12-03 17:09:10 |  分类: java学习 阅读31 评论0   字号:   订阅

 

   :http://blog.csdn.net/dl88250/archive/2007/10/09/1816123.aspx

使用QBC方式:
   List singlechoose =  session.createCriteria(JX_ExerciseDb.class)
    .add(Expression.like("jdd","%"+jdd+"%"))
    .add(Expression.eq("moduleid",trainid))
    .add(Expression.eq("type","01"))
    .list();
 
使用HQL方式:
   String hql  = " from JX_ExerciseDb where jdd like '%"+jdd+"%' and moduleid = '"+trainid+"' and type = 01";
   Query qu = session.createQuery(hql);
   List singlechoose = qu.list();
 
  String hql = "select max(serial) from JX_ExerciseDb where type = " + type + " " +
    "and jdd like  '" + jdd + "%"+isimport+"' and moduleid = " + moduleid + " and usestate = 01  "; 
 
在进行模糊查询时,QBC里用了"%"+jdd+"%",在最外面用了双引号; HQL里用了'%"+jdd+"%' ,在这里是使用的单引号。
 扩展:
在MYSQL中 like 使用 "%bin%";
在ORACLE中 like 使用'%bin%';

你可能感兴趣的:(模糊查询)