gpt4 book ai didi

database - 使用一个复杂的查询还是使用几个更简单的查询更好?

转载 作者:搜寻专家 更新时间:2023-10-30 19:56:13 28 4
gpt4 key购买 nike

哪个选项更好:

  1. 编写具有大量连接的非常复杂的查询,或者
  2. 一个接一个地编写 2 个查询,将处理查询的结果集应用到另一个。

最佳答案

一般来说,一个查询比两个查询要好,因为优化器有更多的信息可以使用,并且可能能够生成比单独使用任何一个查询更有效的查询计划。此外,使用两个(或更多)查询通常意味着您将多次运行第二个查询,并且 DBMS 可能必须重复为查询生成查询计划(但如果您准备语句并将参数作为占位符传递则不需要当查询被(重新)执行时)。这意味着程序和 DBMS 之间的来回交换更少。如果您的 DBMS 在世界另一端(或国家/地区)的服务器上,这可能是一个重要因素。

如果反对合并这两个查询,您最终可能会在 DBMS 和应用程序之间传送大量重复数据。如果表 T1 中的 10,000 行中的每一行都与表 T2 中的平均 30 行连接(因此总共返回 300,000 行),那么您可能会重复将大量数据发送回客户端。如果 T1(的相关投影)的行大小相对较小,而 T2 的数据相对较大,则这无关紧要。如果来自 T1 的数据很大而来自 T2 的数据很小,那么这可能很重要;决定前衡量。

关于database - 使用一个复杂的查询还是使用几个更简单的查询更好?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6771058/

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