我曾尝试找到类似的问题,但没有找到任何问题,除了关于同一列的两个索引的问题(通常)。
让我们假设我们有一个带有列的表COL。该表(和整个数据库)对于客户端是只读的(让我们假设它每隔很长一段时间更新一次/一次,并且仅由后端服务更新)。因此,插入/更新时间无关紧要。
对于此列,有一些高度使用的查询会搜索COL值在某个范围内的行,还有一些更常用的查询会搜索COL与值直接比较的行(相等性检查)。
考虑到上述情况,同时持有 aBTREE和HASHindex是否有益COL?优化器会将BTREE索引用于范围查询,将HASH索引用于直接比较查询吗?COL如果是类型,答案会改变varchar(256)吗?
谢谢!