模糊查询(like、instr)

SQL中经常会遇到模糊查询,现在模糊查询正常、最常用的有两种,一种是like、另一种是instr,这两种单单是简单的搜索,instr的效率是比like要高的(这也得看%在哪儿了)。

  1. like

like中分右模糊、左模糊,右模糊比如’abc%‘时,扫描索引,高效。当模糊查询含左模糊时,比如’%abc’,进行全表扫描,低效。当然更别提’%abc%'了。

  1. instr

instr(字段名, string),instr的使用也很简单,就是填写一下字段名,然后与后面需要查找的内容相关。这个比like的左模糊效率要高,但是要比右模糊还是相差不多的(因为在instr不分左右模糊)。

  1. A>=’’ and A<’’

今天在搜索查找之时还找到了这么一个查找方法,这个方法要比上面的instr效率还要高,不过这个方法局限性还是比较高的。例如:

select * from formtable_main_200_dt1 where hth >= '16040610' and hth < '16040611'

这个方法只适用于字符型字段,且除了我们想要的字段外,还得加上一个超过此类型的,并且他只支持右模糊。但是在这几个当中就右模糊而言,他的效率是最高的。

3的补充讲解

在数据中进行字符的比较时发现自己并不是对此了解,这里记下这里字符的比较是比较的哪里。

这里的比较是比较的ASCII,但这不是比较的总的ASCII,而是一个字符一个字符的比较,例如我这里有数据库的字段为’123456123’,而要比较的还有’123456223’,这里进行比较,当到了61的1和62的2时就可以比较出大小了。

  • 2
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值