这个sql查询的运行时复杂度是多少?



我想知道SELECT * FROM user_table WHERE email = 'test@gmail.com'有多快这是O(1)还是O(n)?

SQL如何搜索特定的行?

如果" email " "列时,搜索复杂度为O(N).

如果在"电子邮件"上有基于哈希的索引;,则可以在O(1)中执行搜索。.

然而,在实际的DB引擎中,索引通常是基于树的(因为它们不仅可以快速搜索相等,还可以搜索"大于/小于")条件)。对于二叉树,搜索复杂度为O(log N)所以在大多数情况下,索引都是"电子邮件">

最新更新