Database 通过具有类别/状态值的列在表中查找数据
假设我们有一个水果,有大量的读取,但也有插入,虽然几乎没有更新或删除 我们有两列存储具有少量选项的值。比如类别[香蕉、苹果、橘子或梨]和状态[完成、进行中、变质、破坏或正常]。Database 通过具有类别/状态值的列在表中查找数据,database,performance,oracle,indexing,partitioning,Database,Performance,Oracle,Indexing,Partitioning,假设我们有一个水果,有大量的读取,但也有插入,虽然几乎没有更新或删除 我们有两列存储具有少量选项的值。比如类别[香蕉、苹果、橘子或梨]和状态[完成、进行中、变质、破坏或正常]。 最后,我们有一个列“所有者的姓氏” 注意: 我将搜索有时按类别和其他状态 在所有情况下,将使用lastname进行搜索。 我将始终对类别/状态执行精确匹配,但从姓氏开始。 常见查询的示例: SELECT * FROM fruit_table WHERE category='BANANA' and last_name LI
最后,我们有一个列“所有者的姓氏”
注意:
我将搜索有时按类别和其他状态
在所有情况下,将使用lastname进行搜索。
我将始终对类别/状态执行精确匹配,但从姓氏开始。
常见查询的示例:
SELECT * FROM fruit_table WHERE category='BANANA' and last_name LIKE 'Cool%'
SELECT * FROM fruit_table WHERE status='Spoiled' and last_name LIKE 'Co%'
SELECT * FROM fruit_table WHERE category='BANANA' and last_name LIKE 'smith%'
我如何准备它,使我们的响应时间较短
索引是否有帮助(考虑到列中的值根本不分散)?
位图索引是否有帮助<那分区呢 最后,我对标题表示歉意,我不知道如何恰当地表述它。
- 位图索引对数量有限的项目有很大帮助 可供选择的数量李>
- 标准的b树索引(或SQL Server中的非聚集索引)可以很好地工作
用于姓氏列。
我会先做这两件事,因为它们很简单,然后看看事情是如何运作的
过早优化通常是一种不好的做法。然而,添加索引是一种快速提高速度的方法,无需付出太多努力。有关Oracle中索引的更多信息,请阅读。位图索引通常应在操作环境中避免使用-它们最适合数据仓库。