java 模糊查询遇到的问题(求助)

2015-11-25 14:14:35 +08:00
 wyk1184

希望有经验的大神可以帮助一下

我在前端传入一个字符 用来匹配字段中包含该字符的数据,发现不能忽略大小写,我想用 upper()的方式来忽略大小写,发现不管用,求救。

public List<User> queryUsers(String queryWord) {
Session session = this.getSessionFactory().getCurrentSession();
Query query=session.createQuery("from iscas_user u where LOWER(u.username) like LOWER(:likequeryWord)");
String likequeryWord="%"+queryWord+"%";
query.setString("likequeryWord", likequeryWord);
List<User> result = query.list();
return result;
}

1937 次点击
所在节点    程序员
5 条回复
wyk1184
2015-11-25 16:28:57 +08:00
代码里用的是 LOWER()方法
luban
2015-11-25 16:31:59 +08:00
大小写是和数据库配置有关
foolishkevin
2015-11-25 18:55:25 +08:00
大小写是数据库相关的
xuyinan503
2015-11-25 23:02:23 +08:00
看上去毫无错误,控制台输出的 sql 文是什么?
wyk1184
2015-11-26 14:19:10 +08:00
感谢大家了,返回的结果确实没有错误,只是我在前段判断时候把大写给忽略了,这样导致我找不到大写的返回结果。。没有问题了感谢大家。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/238797

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX