Php 计算结果宽度全文搜索mysql中的行数

Php 计算结果宽度全文搜索mysql中的行数,php,mysql,Php,Mysql,我想问一下,是否有人能帮我回答这个问题 SELECT count(MATCH(product_text) AGAINST('lorem*' in boolean mode)) AS score FROM table_products WHERE MATCH (text) AGAINST ('lorem*' in boolean mode) limit 0,50000 列文本上有全文索引。A.m.查询返回行的总和作为分数。 我不会计算全文搜索结果。如果结果数(行数) 大于50000,则将返回计数

我想问一下,是否有人能帮我回答这个问题

SELECT count(MATCH(product_text) AGAINST('lorem*' in boolean mode)) AS score FROM table_products WHERE MATCH (text) AGAINST ('lorem*' in boolean mode) limit 0,50000
列文本上有全文索引。A.m.查询返回行的总和作为分数。 我不会计算全文搜索结果。如果结果数(行数) 大于50000,则将返回计数总和50000,否则将返回 将返回一个或多个结果

问题是,如果用户试图查找例如单词“lorem”,并且该单词出现在表f.e.中的行数超过500000 x,那么它在表宽150万行上的速度就不快

我也试过了

SELECT id,name,product_text,price, MATCH(product_text) AGAINST('lorem*' in boolean mode) AS score FROM table_products WHERE MATCH(product_text) AGAINST('lorem*' in boolean mode) and show_product='1' limit 0,50000
。。。行数的宽度

另一个问题是,在下面的查询中,mysql只使用全文索引 按另一列或分数排序比按分数排序慢得多

SELECT id,name,product_text,price, MATCH(product_text) AGAINST('lorem*' in boolean mode) AS score FROM table_products WHERE MATCH(product_text) AGAINST('lorem*' in boolean mode) and show_product='1' order by score desc limit 0,50000
分别。(…按名称订购,按价格订购)

还有更好更快的方法吗

非常感谢你的帮助