我需要搜索包含用户信息表的数据库。我知道通过使用如下查询进行搜索来获得结果
String query;
StringBuilder sb=new StringBuilder(1024);
sb.append("select * from userinfo where uname=").append(key);
query=sb.toString();
但我需要做的是。
- 如果 key 是
abc
- 然后我需要在数据库中搜索所有值为
abc
的数据
- 例如
- 我的数据库包含数据
abc
、aba
、gjabc
、abcxyz
、hjjabcxyz
- 然后我需要检索值
abc
、gjabc
、abcxyz
、hjjabcxyz
- 因为以上所有值都包含
abc
。
我怎样才能做到这一点?
最佳答案
如果您使用的是纯 SQL,则应该使用带“%”的 like。然后,您的查询将返回 uname 包含“abc”的所有行。您的查询需要如下所示:
select * from userinfo where uname like '%key%'
关于java - 使用 "contains"查询而不是 "exact match"查询搜索 oracle 数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15158983/