当在超过 1 亿行的表上的另一列上使用 order by 时,我试图获得简单的全文匹配,以便更快地进行。基础是一张包含两列全文的表,我想搜索数据库,但按主要(最少/最近)或流行度对其进行排序。是否可以通过另一个索引列上的 order by 快速创建全文?下面的 SQL Fiddle 包含架构并解释了所有查询:
请参阅SQL Fiddle #1
到目前为止,非常快的是在单独的表和连接中对搜索列进行非规范化,但如果没有必要,我宁愿不使用另一个表。下面的 SQL Fiddle(最后是非规范化查询):
请参阅SQL Fiddle #2
mysql mariadb full-text-search mysql-5.6
full-text-search ×1
mariadb ×1
mysql ×1
mysql-5.6 ×1