码迷,mamicode.com
首页 > 其他好文 > 详细

HQL中的Like查询需要注意的地方

时间:2014-11-04 14:58:20      阅读:181      评论:0      收藏:0      [点我收藏+]

标签:使用   sp   strong   on   bs   amp   ef   new   sql   

public List getOrgan(String organCode, String organName) {
    String hsql;
    List list;

    if (organCode != null && organCode.length() > 0) {
     hsql = "from Ab31 where bae002 = ? and aab061 like ?";
     list = getHibernateTemplate().find(hsql, new Object[] { organCode, ‘%‘ + organName + ‘%‘ });
     }

    else {
     hsql = "from Ab31 where aab061 like ?";
     list = getHibernateTemplate().find(hsql, ‘%‘ + organName + ‘%‘);
     }

    return list;
}

 

我在HQL中like查询的时候按照SQL语法用双引号组合 "%‘ "+ organName + "‘%" 查不到任何结果,所以必须注意这里只能使用单引号,如:‘%‘ + organName + ‘%‘ ,多个【占位符】用new Object[] { organCode,organName } 来填充

 

like语法简介:

%    表示任意个数的任意字符

_    表示任意一个字符

[abcdefg]   表示里面的字符任何一个,只取一个

[^c]           表示里面的字符不包含c

[a-z]          表示区间中的任一个,如c或d等

[^a-z]        表示非区间中的任一个

 

escape ‘/‘     转义符,表示/之后的字符不是特殊字符。

like ‘%商品/%模板%‘ escape ‘/‘    可以查出   商品%模板 特殊字符

HQL中的Like查询需要注意的地方

标签:使用   sp   strong   on   bs   amp   ef   new   sql   

原文地址:http://www.cnblogs.com/toSeeMyDream/p/4073585.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!