Mysql FULLTEXT 索引

ALTER TABLE `sqltable` ADD FULLTEXT `name` (`name`), ADD FULLTEXT `full_tag` (`tag`);
ALTER TABLE `sqltable` ADD FULLTEXT(name, tag);

 

Thinkphp8查询写法

class Blog extends Model
{
    public static function matchSearch($keyword,$field)
    {
        return  self::whereRaw("MATCH($field) AGAINST(? IN NATURAL LANGUAGE MODE)", [$keyword])->select();
    }
}
// 调用
$data = Blog:matchSearch('小明','name');

 

对比redis-search插件方式,SQL可以额外免维护方式比较方便。