【发布时间】:2014-04-13 03:29:19
【问题描述】:
我有一个名为 FANS 的表,其中存储了各种人的人口统计信息,包括姓名、地址和出生日期。该表本身包含 7,655 行数据。我在 CITY 列上创建了一个索引。我可以肯定地知道表中只有 40 个独特的城市,并且没有 NULL 值。我正在尝试对优化器何时开始使用 INDEX 进行简单的实验。
SELECT CITY
FROM FANS
WHERE CITY BETWEEN 'APOLLO BEACH' AND 'BRANDON';
我之前从 MySQL 中了解到选择性 = 基数 / 记录数 * 100%,其中基数是索引中唯一值的数量。
当我在 SQL 开发人员中运行“解释计划”时,它返回的基数为 500。因此正确的数学应该是 500 / 7,655 * 100%?
【问题讨论】:
-
可能oracle公式与MySQL公式不同。