mysql - 如何从mysql中的关键字字段搜索记录

标签 mysql

我有以下 mysql 表结构:http://sqlfiddle.com/#!9/d36f69/2

CREATE TABLE IF NOT EXISTS `subcat` (
  `id` int(11) DEFAULT '0',
  `subCatName` varchar(255) NOT NULL,
  `Keywords` varchar(255) DEFAULT NULL,
  KEY `Keywords` (`Keywords`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;

以下是两条记录:

id  subCatName  Keywords
1   Plastic     baby toys, bag, basket
2   Metal   metal finish, box cover

现在我想使用关键字字段搜索记录。假设我输入

"baby toys products"

然后您可以看到关键字字段中有“婴儿玩具”一词。因此该子目录记录应该在搜索查询中返回。在这里您可以看到“products”在关键字中没有匹配,但只有两个词匹配。然后仍然应该在结果中返回第一个匹配的记录。

我们怎样才能做到呢?

最佳答案

将关键字拆分为不同的术语,并将搜索词拆分为不同的术语,然后使用通配符,例如 '从子目录中选择*,其中关键字如'%baby%'' 或者直接使用FTS lib。

关于mysql - 如何从mysql中的关键字字段搜索记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39971503/

相关文章:

php - 在数据库中搜索字符串

mysql - 在 phpMyAdmin 中创建 MySQL View 时出错

mysql错误: 1292 Incorrect datetime value showing a date that doesn't exist

使用变量作为表名的mysql错误

Mysqldump 和表的顺序

mysql - BigQuery 无法识别联接中子选择的字段

mysql - 有没有办法在不同主机上测试您的 MYSQL 数据库速度?

PHP 无法显示数据库中的所有必需数据

php - 通过复选框选择数据单击下一步并取消选择所选行

php - 将多个相似语句分组