使用"包含"查询而不是"完全匹配"查询来搜索oracle数据库

Jam*_*mes 2 java sql oracle jdbc

我需要搜索包含用户信息表的数据库.我知道通过搜索查询得到结果,如下所示

String query;
StringBuilder sb=new StringBuilder(1024);
sb.append("select * from userinfo where uname=").append(key);
query=sb.toString();
Run Code Online (Sandbox Code Playgroud)

但我需要做的是.

  • 如果关键是 abc
  • 然后我需要在数据库中搜索具有该值的所有数据 abc
  • 例如
  • 我的数据库中包含的数据abc,aba,gjabc,abcxyz,hjjabcxyz
  • 然后,我需要检索的值abc,gjabc,abcxyz,hjjabcxyz
  • 因为以上所有值都包含abc共同点.

我怎样才能做到这一点?

Mag*_*lex 7

如果您使用的是纯SQL,则应使用"%"包围.然后,您的查询将返回uname包含"abc"的所有行.您的查询需要如下所示:

select * from userinfo where uname like '%key%'
Run Code Online (Sandbox Code Playgroud)