Database 在数据库(如数据结构)中高效地实现和
我可以想象如何在一些列上实现一个简单的数据库和索引——只需将这些列的值保存在某种平衡树中即可 这个问题涉及的是如何有效地实现Database 在数据库(如数据结构)中高效地实现和,database,data-structures,Database,Data Structures,我可以想象如何在一些列上实现一个简单的数据库和索引——只需将这些列的值保存在某种平衡树中即可 这个问题涉及的是如何有效地实现和查询?您将如何实现这样的功能 SELECT * FROM points WHERE x > 0 and x < 4 and y > 10 and y < 14 从x>0、x10和y
和查询?您将如何实现这样的功能
SELECT * FROM points WHERE x > 0 and x < 4 and y > 10 and y < 14
从x>0、x<4、y>10和y<14的点选择*
请注意,我并不是专门询问数据库,而是在实践中,对于二维查询,哪种数据结构最适合这个问题。我记得曾经学习过一次关于-这是这个问题的现实解决方案吗?通过常规搜索树,您可以非常有效地做到这一点
你也可以在一个O(N)中扫描整个数据,我猜大部分数据库都是这样做的。特别是考虑到指数的成本
无论如何,这是大多数DBs支持的最常见和最简单的索引类型:因此,如果您在索引中寻找一个范围,那么它相对容易优化
顺便说一下,你也在期待DB能够理解你正在寻找范围并根据这一点进行优化,因为这通常意味着你只需要两个条件…