sql中通配符的搜索

本文介绍了SQL中的通配符,包括%、_(下划线)、[]和[^]的用法,并提供了一种方法来处理含有这些特殊字符的模糊查询需求。
部署运行你感兴趣的模型镜像

 

sql中有如下通配符

含义分别为

  % 包含零个或更多字符的任意字符串。

  _(下划线) 任何单个字符。

  [ ] 指定范围(例如 [a-f])或集合(例如 [abcdef])内的任何单个字符。

 

  [^] 不在指定范围(例如 [^a - f])或集合(例如 [^abcdef])内的任何单个字符。


一般情况,在搜索框中输入:“_”(下划线)或者“%”(百分号),然后进行搜索,由于这两个字符是sql中的通配符,所以一般情况是会搜索到所有的结果,除非你已经考虑到了这个问题。

因为是通配符,所以按常理,需要将需要模糊查询的字符串转化成转义的字符串,写了一个方法,如下:

 

public static String processQuery(String queryParameter) {
      if (!StringUtil.isBlank(queryParameter)) {
         if (queryParameter.indexOf("%") >= 0) {
            return (queryParameter.replace("_", "\\_")).replaceAll("%",
                  "\\\\%").trim();
         } else {
            return (queryParameter).trim().replace("_", "\\_");
         }
      } else {
         return null;
      }
   }
 比方,你传入“%hha_haoao”,该方法会返回“\%hha\_haoao”
 在sql文件中使用关键字‘escape’ 

 

Sql代码 
  1. Select * from service  where name like '\%hha\_haoao' escape '\' ;  

即把%和_当作为普通的字符串,进行模糊搜索。

 

您可能感兴趣的与本文相关的镜像

Stable-Diffusion-3.5

Stable-Diffusion-3.5

图片生成
Stable-Diffusion

Stable Diffusion 3.5 (SD 3.5) 是由 Stability AI 推出的新一代文本到图像生成模型,相比 3.0 版本,它提升了图像质量、运行速度和硬件效率

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值