gpt4 book ai didi

sql - 嵌套查询 : best practices

转载 作者:行者123 更新时间:2023-12-02 04:50:02 24 4
gpt4 key购买 nike

我正在尝试加快查询速度。其中很多都非常复杂,目前我主要通过创建多个查询并通过联接将它们链接起来来实现这一点。

这是最佳实践,还是我应该在 SELECT 中使用 SELECT 并尝试在一个查询中实现相同的目的?

这两个选项是否会影响速度,还是复杂就复杂?

编辑:下面的示例查询

SELECT HoldingCoNos.ID
FROM (
SELECT [SearchByName - No Filter].ID
FROM [SearchByName - No Filter]
INNER JOIN [SearchByName - Level 1 Subsidiaries]
ON [SearchByName - No Filter].ID = [SearchByName - Level 1 Subsidiaries].[Holding Company]
) AS HoldingCoNos
GROUP BY HoldingCoNos.ID;

这一切都在一个查询中 - 另一种选择是将查询的 FROM 部分的内容创建为两个单独的查询,保存它们并使用内部联接。

最佳答案

一般来说:例如,为父查询中的每一行执行子查询

Select * from employees where name IN (select Manager_name from Team_project where project_id=1)

它会为 employees 表中的每一行执行 select manager_name 来比较允许查询被缓存的名称,这将使它更快,但它仍然需要更多的工作。

但是,这完全取决于查看此讨论以获取更多详细信息: Subquery v/s inner join in sql server

关于sql - 嵌套查询 : best practices,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19027729/

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