以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  模糊查询时如何忽略掉中间部份字符  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=136773)

--  作者:happyft
--  发布时间:2019/6/21 10:51:00
--  模糊查询时如何忽略掉中间部份字符
如果规格字段的值是: 1.0(+0/-0.05)*520.6(±0.2)*99.8(±0.1),模糊查询只要输入1.0*520.6*99.8就可以查到,
也就是要忽略掉括号及其内部的内容查询,不管括号出现在任何位置,比如中间可能有,可能无,即有可能是1.0(+0/-0.05)*520.6*99.8(±0.1)
用代码"规格 like ? " 后面要怎么写才行?
谢谢!



--  作者:有点甜
--  发布时间:2019/6/21 10:58:00
--  

换一种思路,比如

 

"第一列 Like \'%1.0%\' and 第一列 Like \'%520.6%\' and 第一列 Like \'%99.8%\'"


--  作者:HappyFt
--  发布时间:2019/6/21 11:20:00
--  
因为模糊输入文本框是通用的,可能会从很多个可能数据类型都不相同的字段中匹配,这样拆分语句很长,会不会影响查询速度?
另外,录入人员经常会在不固定的位置输入一些空格,查询中要如何忽略所有的空格?
有时录入的括号是全角的,有时又是半角的又要如何忽略呢?
谢谢!

--  作者:有点甜
--  发布时间:2019/6/21 11:44:00
--  
以下是引用HappyFt在2019/6/21 11:20:00的发言:
因为模糊输入文本框是通用的,可能会从很多个可能数据类型都不相同的字段中匹配,这样拆分语句很长,会不会影响查询速度?
另外,录入人员经常会在不固定的位置输入一些空格,查询中要如何忽略所有的空格?
有时录入的括号是全角的,有时又是半角的又要如何忽略呢?
谢谢!

 

1、肯定会影响查找速度的,like本身就效率比较低;

 

2、你可以添加辅佐列进行处理,那些不需要查找的、不规范的数据,处理掉以后存放到辅佐列,根据辅佐列查找。