有没有办法让TSQL变量成为常量?
发布于 2008-08-25 19:05:30
不能,但您可以创建一个函数并将其硬编码在其中并使用它。
下面是一个示例:
CREATE FUNCTION fnConstant()
RETURNS INT
AS
BEGIN
RETURN 2
END
GO
SELECT dbo.fnConstant()
发布于 2012-10-04 16:31:48
对于缺少constans,我的解决办法是向优化器提供有关值的提示。
DECLARE @Constant INT = 123;
SELECT *
FROM [some_relation]
WHERE [some_attribute] = @Constant
OPTION( OPTIMIZE FOR (@Constant = 123))
这将告诉查询编译器在创建执行计划时将变量视为常量。缺点是您必须定义该值两次。
发布于 2008-08-25 19:15:26
不,但是应该使用好的旧的命名约定。
declare @MY_VALUE as int
https://stackoverflow.com/questions/26652
复制相似问题