【发布时间】:2019-01-27 11:36:53
【问题描述】:
我有一个包含不同连接的树 (A⨝B)⨝(C⨝D)⨝(E⨝F)⨝(G⨝H)⨝(I⨝J) 格式的 SQL 查询。我想知道那有什么方法可以分别找到每个连接操作的时间,例如子表达式(A⨝B)可以花费多少时间。或者 (C⨝D) 可以取。而不是整个表达式。或者我们如何才能只找到子表达式 (A⨝B)⨝(C⨝D) 的时间。我已经使用 Java 语言将我的 SQL 查询转换为树。提前致谢。我正在使用 SQL Server 来实现我的查询
【问题讨论】:
-
为您想到的每个感兴趣的子查询设置统计时间并设置统计信息
-
你能告诉我如何将这个查询分解为子查询“从氧气中选择 Oxygen.OxygenRatio, Water.WaterTemp,Oil.Oil_limit, Engine.EngineID 加入水 Oxygen.OxygenID=Water .OxygenID JOIN Oil ON Oil.OilID=water.WaterID Join Engine ON Engine.EngineID=Water.WaterID JOin Fuel ON Fuel.WaterID=Water.WaterID"
-
请注意——这些连接看起来有问题。 JOIN Oil ON Oil.OilID=water.WaterID 还有: Join Engine ON Engine.EngineID=Water.WaterID 不应该是“JOIN Oil ON Oil.WaterID=water.WaterID”或“JOIN Oil ON Oil.OilID=water .OilID”?
-
你有没有使用SSMS查看执行计划(ctrl + L)?如果这还不够好,您还想了解关于查询执行的哪些信息?
标签: sql sql-server database optimization