在mysql中对多个字段进行加权搜索的最佳方法?
这是我想做的:
- 将搜索主题与表的多个字段进行匹配
- 按字段的重要性和匹配的相关性(按该顺序)对结果进行排序
例如:假设我有一个博客。然后有人搜索“php”。结果将如下所示:
- 首先,字段“title”的匹配项,按相关性排序
- 然后,字段“body”的匹配项,也按相关性排序
- 等等,使用指定的字段...
我实际上用PHP的一个类做到了这一点,但它使用了很多UNIONS(很多!)并且随着搜索主题的大小而增长。所以我担心性能和DOS问题。有人对此有线索吗?