[英]conversion SQL query with LIKE operator to SQL query with filters
是否有可能SQL查询与转换LIKE
操作符SQL查询,只有等式和不等式过滤,而不是LIKE
操作。 两个查询的输出必须相同。
如果可能的话,怎么做?
我正在使用MySQL数据库。
我尝试寻求解决方案,但没有成功。
如果不使用任何类型的function
(如您在@jonlester答案中的注释所述),则无法做您想做的事情。
用一个简单的函数来做到这一点的方法是这样的:
select
mycol
from
mytbl
where
INSTR(mycol,test) > 0
我不明白您的问题,但是您可以通过以下方式使用mysql函数:
select
mycol
from
mytbl
where
mycol like "test%"
将与以下相同:
select
mycol
from
mytbl
where
left(mycol,4) = "test"
您有两个选择...
1. SELECT myColumn FROM myTable WHERE INSTR(myColumn,'myString') = 1
2. SELECT myColumn FROM myTable WHERE LOCATE('myString',myColumn) = 1
祝好运!!! 干杯!!!
如果在查询列时使用LIKE
查找子元素,则可以在插入/更新子元素时将这些子元素拆分为单独的列,以允许在搜索条件中使用均等运算符。
在您指定需求时,我认为您应该朝着整合全文索引的方向发展。
就是 看一下SOLR,Lucene或类似产品的解决方案。 您可能要从这里开始搜索引擎-Lucene或Solr-并从那里单击/ google。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.