我在 MySQL 表中有三个字段 - 品牌、范围和型号以及大约 8,000 个型号,每个型号都有一个品牌和一个范围。
我正在创建一个 jquery 自动完成搜索,它使用 json 响应返回 10 个最有可能与用户输入匹配的结果。只要输入了至少 3 个字符,json 查询就会将用户输入与品牌 + 范围 + 型号的串联相匹配。
该系统最初将由一小部分人使用,但最终可能会被数千人使用,因此我正在努力找出执行此搜索的最有效方法。
我想到的三种可能的方法是:
- 在 models 表中创建一个新字段,该字段每天使用 cron 作业更新,以创建包含 brand + ' ' + range + ' ' + model 的单个字段并搜索该字段
- 在 MySQL 查询中包含串联并据此进行搜索
- 创建一个包含串联的 View 并针对该 View 进行搜索
为了进行搜索,这些方式中的哪一种(或者可能是不同的方式)是组合三个字段的最快和最具扩展性的方式?
最佳答案
使用 MySQL Fulltext Index .
关于php - 搜索三个 MySQL 文本字段组合的最快和最具扩展性的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20189579/