2017-10-21 87 views
0

我有以下代码:MySQL的搜索

$search_str= "I want to be a programmer."; 

而且我在mysql数据库以下数据。

I want to be. 

我用:LIKE %$search_str% 但它不返回数据。

如果我只搜索“我想要”然后得到结果。
如果任何部分或完整部分匹配,我想获取数据。

+0

您需要向我们展示了完整的代码和查询您所使用的做这个。 – FluffyKitten

+0

$ search_text =“anything”; $ query =“SELECT * from tbl_questions where question LIKE'%$ search_text%'”; –

+0

这是你的整个代码?如果是这种情况,它有什么奇迹,它不工作...请发布*完整的代码和查询*您正在使用。 – FluffyKitten

回答

0

您需要按照其他方式进行操作,并说出您的输入与列的位置相同。

SELECT * 
FROM <TABLE> 
WHERE <input> LIKE CONCAT('%', <TABLENAME>.<COLUMNNAME>, '%') 
+0

可以参数化吗? –

0

根据自己的标准得到的结果,你可以反向的方式增加额外喜欢子句对您的字符串匹配列

select * 
from table 
where search_column like '%I want to be a programmer.%' 
or 'I want to be a programmer.' like concat('%',search_column ,'%')