在http://www.cs.uoi.gr/~pitoura/grdb01/ioannidis.pdf中,我读到了:
实际上,许多现代系统都限制了查询的大小, 可以提交(通常大约十五次加入),因为对于较大的 查询优化器由于其很高的内存而崩溃 要求。但是,实践中看到的大多数查询都涉及较少 超过十个联接,并且该算法已被证明在以下方面非常有效 这样的背景。
这次是真的吗?
对于我来说,我们只能加入15个关系似乎很奇怪。
而且,当代数据库是否仍使用动态算法进行联接排序?
答案 0 :(得分:1)
据我所知,这是不正确的。您必须拥有非常古老的资源。据我所知,对查询的正常限制是查询的总长度或IN
列表中项目的数量。
我个人生成的查询超过10万个-尽管我不记得联接的数量。
对于任何给定的数据库,您可以检查是否存在这样的限制。我可以补充一点,当有很多连接时,优化器会选择捷径-如果没有索引,您的查询可能会效率低下。