摘要:
not null 能用到索引吗?是的,"not null" 可以用到索引。索引是为了加快数据库的查询速度,通过用一定的数据结构来存储数据,并且根据某...
not null 能用到索引吗?
是的,"not null" 可以用到索引。
索引是为了加快数据库的查询速度,通过用一定的数据结构来存储数据,并且根据某些列值进行排序。在进行查询的时候,可以利用索引来快速定位到所需的数据。
当定义一个字段为 "not null" 时,表示该字段的值不能为空。如果在该字段上创建了索引,那么在查询时,数据库可以直接通过索引来快速定位到该字段不为空的记录,从而提高查询效率。
不过需要注意的是,索引的使用也要根据具体情况来决定,如果在某个字段上创建索引,但是该字段的不为空的记录太多,那么索引的效果可能会变差。因此,在创建索引时应慎重考虑。
图片来源:网络
pg数据库为什么索引没走?
1、索引列有函数处理或隐式转换,不走索引 2、索引列倾斜,个别值查询时,走索引代价比走全表扫描高,所以不走索引 3、索引列没有限制 not null,索引不存储空值,如果不限制索引列是not null,oracle会认为索引列有可能存在空值,所以不会按照索引计算)