我需要搜索不属于他们的整个单词
$q = $_GET['q'];
SELECT * FROM table WHERE column LIKE '% $q %'
例如$q = mag
如果找不到杂志
我尝试过用户发布的解决方案但是没有用
喜欢REGEX和CONCAT
ps:我的db列是一个大文本
答案 0 :(得分:1)
我不知道这是否会解决您的问题,或者您已经尝试过,但试一试
使用以下REGEXP
SELECT * FROM table WHERE column RLIKE "[[:<:]]$q[[:>:]]";
答案 1 :(得分:0)
不要使用LIKE
...在这种情况下仅使用比较。像这样:
SELECT * FROM table WHERE column = '$q';
答案 2 :(得分:0)
如果您的单词用空格分隔,则在两边添加空格:
SELECT *
FROM table
WHERE concat(' ', column, ' ') LIKE '% $q %';