我想了解在架构内查找特定表的时间复杂度是多少。是O(n)吗?

例如:

SELECT * FROM users


我想知道在选择表数据之前查找表用户的时间复杂度是多少?

我之所以这么问,是因为我现在有大量的冗余表,我想了解一下摆脱不必要的表是否有好处,如果删除它们,我是否会从速度改进中受益。 50+几千张桌子。

最佳答案

数据库的元数据基本上存储在SQL表中。这些表已正确索引以便快速检索。

查找特定表存在开销。但是,拥有几百或数千个其他表可能不会对编译查询产生显着影响-因为基础表应该非常有效。

当然,可能存在特定于实例的特定问题。例如,在内存严重受限的环境中,元数据也许会从表中“挤出”数据,从而影响性能。但是,这与您的问题不同。

有充分的理由来清理数据库-维护性是最大的原因-以及使用数据库的人的可用性。如果只有几百个表,那么性能不是原因之一。

09-30 14:57
查看更多