一百分求一个问题?用hibernate like 去查询一个含有%内容的字段如何查?

wqbmercury 2006-05-21 11:46:50
比如有一个表A
有一个字段为col1 varchar(100)
当我想查询出字段中包含%的内容时,要如何去查询呢?
...全文
702 27 打赏 收藏 转发到动态 举报
写回复
用AI写文章
27 条回复
切换为时间正序
请发表友善的回复…
发表回复
wqbmercury 2006-06-16
  • 打赏
  • 举报
回复
楼上的兄弟们,谢谢各位的关注啊,高手来啊
aChinese 2006-06-16
  • 打赏
  • 举报
回复
SQL Server 的写法 '%[%]%' , 不知道其他行不
aChinese 2006-06-16
  • 打赏
  • 举报
回复
%[%]%
aChinese 2006-06-16
  • 打赏
  • 举报
回复
&%
xbw0402 2006-06-12
  • 打赏
  • 举报
回复
查查有没有类似String中的indexof()的函数,如果字段中包含“%”(indexof()后的值不为-1),则显示。
andy971024 2006-06-12
  • 打赏
  • 举报
回复
使用预处理语句
然后在query.set**(0,"%"+userName+"%")

hql里只写成like ?
%在set里设进去%与里边不要加单引号
wqbmercury 2006-06-10
  • 打赏
  • 举报
回复
这么长时间了,还没有人知道这个问题吗?
wqbmercury 2006-06-10
  • 打赏
  • 举报
回复
UP
yingyi8989 2006-05-31
  • 打赏
  • 举报
回复
这个问题我也碰到过,如果输入查询时,有包括“%”和“_”符号时,就会全部查找出来。后来,只好控制不让输入这两个符号。不知道,有没有更好的解决办法?关注中……
wqbmercury 2006-05-30
  • 打赏
  • 举报
回复
兄弟们,不是这个意思哈,我的意思是等同于如下的查询语句

select * from table1 a where a.col1 like '%\%%' escape '\'

这个查询的意思就是要查出table1表中的col1字段内容中包含有%号的内容的记录啊,
我现要连的数据库是sql server 的,在hibernate中要如何做到这样的查询?
目木 2006-05-28
  • 打赏
  • 举报
回复
你可以使用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文档里面这样写的
qinqinxiatiao 2006-05-26
  • 打赏
  • 举报
回复
MARK 帮顶
beztc 2006-05-25
  • 打赏
  • 举报
回复
Criteria criteria = session.createCriteria(User.class);
criteria.add( Expression.eq("firstname", "%") );
List result = criteria.list();
beztc 2006-05-25
  • 打赏
  • 举报
回复
Criteria criteria = session.createCriteria(User.class);
criteria.add( Expression.eq("firstname", "Max") );
List result = criteria.list();
hornbilltofy 2006-05-25
  • 打赏
  • 举报
回复
写法完全参照java关键符的处理方法就可以了
J2oEE 2006-05-22
  • 打赏
  • 举报
回复
"from xx x where x.feild like '%mmmmmmmmmm%'"
wqbmercury 2006-05-22
  • 打赏
  • 举报
回复
那我要查询的是带\字符的呢?
wqbmercury 2006-05-22
  • 打赏
  • 举报
回复
等我去测试一下,谢谢各位兄弟了

plusjava 2006-05-22
  • 打赏
  • 举报
回复
hibernate3
list = session.createCriteria(PopedomUser.class).add(
Restrictions.like("gradeCode", gradeCode + "%")).addOrder(
Order.asc("gradeCode")).list();
wqbmercury 2006-05-21
  • 打赏
  • 举报
回复
晕,没人知道吗?
加载更多回复(7)

67,514

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧