• mysql的Ft_hints: no_ranking


    是不是发现找遍全网也没有找到相关资料?

    巧了,我也是,所以我这里来进行一次大胆分析(基本靠猜)


    在使用mysql的fulltext索引(全文索引)时,使用explain则会在extra中出现这句提示:Ft_hints: no_ranking

    我们先看看mysql官方怎么说:

    – Also, if avoiding the rank information in the projection (SELECT clause) and using other aggregations like count(*), will use the “no ranking” FT_hints. The LIMIT hint won’t be used if invoked explicitly an ORDER BY and the MATCH clause in the projection.
    – 引用:https://blog.pythian.com/mysql-innodbs-full-text-search-overview/

    大概意思就是在使用聚合函数之类的时候就会出现no ranking

    接下来就是大胆猜测了

    mysql的全文索引也是基于倒排索引的,所以他也是无序存储着的,
    所以在返回搜索结果时都要根据相关度来进行排序,也就是ranking,
    但是如果你使用了聚合函数,例如count(*)或者group by这些,那么你的结果就只有聚合之后的那一行了,既然只有一行,那肯定就不用排序啦,也就是no ranking


    所以我猜测Ft_hints: no_ranking意思就是你使用了聚合函数,因此不需要进行排序的意思

  • 相关阅读:
    HDU4777 Rabbit Kingdom
    HDU6200 mustedge mustedge mustedge
    HDU6187 Destroy Walls
    最长公共上升子序列的学习
    关于约瑟夫问题的学习
    洛谷1602 Sramoc问题
    HDU2089 不要62
    poj3532 Round Numbers
    洛谷1014 Cantor表
    花盆Flowerpot[USACO12MAR]
  • 原文地址:https://www.cnblogs.com/fatmanhappycode/p/12231191.html
Copyright © 2020-2023  润新知