mariadb 10.5 解释输出中行部分百分比的含义

Meaning of percentage in rows section in explain output of mariadb 10.5

我最近迁移到 mariadb 10.5,遇到了这个特定的输出,其中百分比与解释输出中的行一起显示。我找不到任何相同的文档,可能是新功能。

这到底是什么意思?是某种关于行被读取的概率吗?

MariaDB [c6b2c772b91fd3d8]> explain 
    select 
        `execute_action`, `state_type` 
    from 
        `tabSuperflow Document State` 
    where 
        `parent` = 'Check Point' 
        and `state` = 'Pending TSM Approval - Delivery' 
    order by 
        modified desc \G
*************************** 1. row ***************************
           id: 1
  select_type: SIMPLE
        table: tabSuperflow Document State
         type: ref|filter
possible_keys: parent,index_on_state
          key: index_on_state|parent
      key_len: 563|563
          ref: const
         rows: 1 (17%)
        Extra: Using index condition; Using where; Using filesort; Using rowid filter
1 row in set (0.001 sec)

在一个相当不相关的文档中找到答案

https://mariadb.com/kb/en/rowid-filtering-optimization/

rows column shows the expected filter selectivity, it is 5%.

基本上,该百分比显示了预期的过滤器选择性,即将在此步骤中使用 where 子句过滤的行。此输出也可以在 filtered 列的解释扩展输出中看到。

MariaDB [c6b2c772b91fd3d8]> explain extended select `execute_action`, `state_type` from `tabSuperflow Document State` where `parent` = 'Check Point' and `state` = 'Pending TSM Approval - Delivery' order by modified desc \G
*************************** 1. row ***************************
           id: 1
  select_type: SIMPLE
        table: tabSuperflow Document State
         type: ref|filter
possible_keys: parent,index_on_state
          key: index_on_state|parent
      key_len: 563|563
          ref: const
         rows: 1 (17%)
     filtered: 16.67
        Extra: Using index condition; Using where; Using filesort; Using rowid filter
1 row in set, 1 warning (0.001 sec)