oracle模糊查询

oracle中模糊查询有以下几种情况:

  • like

       使用like关键字做模糊查询时,先考虑是否需要用到索引。如果对模糊查询的列没有用到索引,则可以任意写,写法网上都可以查到,很多,这里就不过多说明;如果对模糊查询的列用到了索引,则需用  xxx字段 like '值%',才会用到索引,否则会做全表扫描,切记!!!

  • instr

       使用instr函数做模糊查询时,不用考虑索引的问题,但有一点需要注意,是大于0还是等于0,例如:instr(xxx字段,'值') > 0,意思等同于  xxx字段 like '%值%';如果是等于0,例如:instr(xxx字段,‘值’) = 0 ,意思等同于  xxx字段 not like ‘%值%’

  • contains

      使用contains函数做模糊查询时,需要另外为模糊查询列建全文索引。该函数对于需要用到关键词组模糊查询时非常有用

 

      说明: 对于用哪种好,具体情况具体分析。如果内容比较少,则用like或instr;如果模糊查询列内容比较多,则可考虑用contains函数。

(注:个人建议,仅供参考)

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值