如何在MySQL中LIKE语句中动态传值
Time:2021/06/25 11:02:00 Click:
在操作MySQL时,我们经常用到LIKE这样的SQL语句来做匹配与搜索。比如:
SELECT * FROM `shangfox_news` WHERE tag LIKE '%tag%'
这里的‘%tag%’ 我们可以通过拼接的方式来做,但这样我们是预先定义,好的 。如果LIKE匹配的需要动态的重数据库里面取出来在匹配?
1、取得要匹配的关键词
select name from yi18_cookclass where id =?
2、通过拼接的方式
SELECT * FROM `yi18_cook` WHERE tag LIKE '%(select name from yi18_cookclass where id =?)%'
我们一看这样的SQL就不对,当然也没有我们需要的结果。但我们可以通过这样的思路做一点小的调整CONCAT()拼接函数:
SELECT * FROM `yi18_cook` WHERE tag LIKE CONCAT('%',(select name from yi18_cookclass where id =?),'%')
OK,这样就友好的使用函数的拼接的方式,实现了KIKE的动态参数。
四川尚狐网络-一家服务10年的专业网站制作公司,累计服务客户400+,用心,只为做好每一个网站!