0

我不知道怎么称呼它,也许它就在SO的某个地方……

我在想哪一个更快,更容易维护..

说,我有 50 个变量,其中每个变量从表中获取其值,例如

SET @Location = SELECT location FROM params WHERE TYPE = 'Param'

对比

SET @Location = 'D:\OUTBOX\'

哪个是优化的,并且会在查询执行过程中得到提升,除了使用 SQL 分析器 + SQL 执行计划之外,还有其他方法可以分析查询吗?

4

1 回答 1

0

嗯,第二个显然更快,因为它不读取任何数据,但它可以为你工作吗?它显然也更难维护。第一个带有简单选择的,但不应该导致任何性能问题。

如果所有变量都来自表中的同一行,则可以使用一条SELECT语句读取它们:

SELECT @Location = location, @Param2 = Column2, @Param3 = Column3 FROM params WHERE TYPE = 'Param'
于 2013-07-03T11:17:24.880 回答