Mysql中有两种重要的索引:myisam 和 innodb
myisam 和 innodb主要区别:
1.myisam 不支持事务,不支持行锁,不支持外键 支持full text 即全文索引 查询,新增速度较快
2.innodb 无默认计数器 不支持全文索引 update 更新更快 保存数据文件.sql 很占空间
下面介绍的是基于myisam的全文索引(不支持中文,只支持字母和数字,需转成base64保存)
设计需要全文索引字段 选择 full text 索引 如 name_index
//查询数据
SELECT *, MATCH (name_index) AGAINST ('{$search}' IN BOOLEAN MODE) AS score FROM {$table} WHERE MATCH (name_index) AGAINST ('{$search}' IN BOOLEAN MODE) ORDER BY score DESC
//查询条数
SELECT count(*) as total FROM {$table} WHERE MATCH (name_index) AGAINST ('{$search}' IN BOOLEAN MODE)
注:类似关键字搜索 需要将中文保存成base64 用空格将关键字分开