繁体   English   中英

如何在 Java 中指定不区分大小写的搜索

[英]How can I specify a case insensitive search in Java

我目前有这个代码:

query = "select ID_OBJECT from "+Config.props.getProperty("Ob.SchemaName.Objects")+".sdm_doc_info where name like ? and typefileverscurr = 'DWG'";    

但是,这仅返回与大写 DWG 匹配的结果。 我希望我的搜索不区分大小写。 在这种情况下,我该如何使用?i? 我尝试了以下操作,但我的 Eclipse 不喜欢它:

query = "select ID_OBJECT from "+Config.props.getProperty("Ob.SchemaName.Objects")+".sdm_doc_info where name like ? and typefileverscurr.matches('(?i:dwg)')";

谢谢你的帮助。

通常我用两种方式做这些工作,一种是使用 SQL upper()lower()函数,像这样:

"select ID_OBJECT from "+something+".sdme_doc_info where lower(typefileverscurr) = 'dwg'";

或者

"select ID_OBJECT from "+something+".sdme_doc_info where upper(typefileverscurr) = 'DWG'";

另一种方法是在查询中使用like并混合上述功能以及使更不敏感

"select ID_OBJECT from "+something+".sdme_doc_info where lower(typefileverscurr) like '%dwg%'";

或者

"select ID_OBJECT from "+something+".sdme_doc_info where upper(typefileverscurr) like '%DWG%'";

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM