gpt4 book ai didi

sql - 什么是索引以及如何使用它们来优化数据库中的查询?

转载 作者:行者123 更新时间:2023-12-01 19:31:46 25 4
gpt4 key购买 nike

我正在维护一个相当大的应用程序和数据库,并且注意到我们的一些存储过程中的数据库性能较差。

我总是听说“添加索引”可以提高性能。我当然不是 DBA,我不明白索引是什么、它们为什么有用以及如何创建它们。

我基本上需要索引 101。

有人可以给我资源以便我学习吗?

最佳答案

根据经验,索引应该位于您在连接或 where 子句中使用的任何字段(如果它们有足够多的不同值使得使用索引值得,那么只有几个可能值的字段不会从索引中受益)索引,这就是为什么尝试对位字段进行索引是毫无意义的)。

如果您的结构已正式创建主键(应该如此,我从不创建没有主键的表),那么根据定义,这些主键会被索引,因为主键需要有唯一索引。人们经常忘记他们必须为外键建立索引,因为在设置外键关系时不会自动创建索引。由于外键的目的是为您提供一个要连接的字段,因此大多数外键可能应该建立索引。

索引一旦创建就需要维护。如果您有大量数据更改事件,它们可能会变得碎片化且性能降低,并且需要刷新。阅读有关索引的在线书籍。您还可以在那里找到创建索引语句的语法。

索引是一种平衡行为,您添加的每个索引通常都会增加数据插入、更新和删除的时间,但可能会加快复杂插入、更新和删除中的选择和连接速度。尽管上面的经验法则是一个很好的起点,但没有一个公式可以确定什么是最佳索引。

关于sql - 什么是索引以及如何使用它们来优化数据库中的查询?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/105400/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com