我有一个多表SQL Select,超过150行,有两个输入参数在select的一个内部区域内使用。它们不仅仅用于限制最后检索数据的位置。参数用于选择的内部区域。
现在,SQL Select是具有两个输入参数的存储过程的一部分。它始终从其他存储过程调用。
用视图替换它是不是一个好主意,如果可以,我可以以某种方式为视图提供输入参数?
答案 0 :(得分:1)
据我所知,您无法使用参数创建视图。相反,您可以创建一个接受输入参数的函数。
CREATE FUNCTION test.func (@Parameter varchar(10))
RETURNS TABLE
AS
RETURN
(
SELECT Field1, Field2,....
FROM table1
WHERE Field3 = @Parameter
);
基本上,视图就像表一样,并且在表中添加“parameters
”的唯一方法是在访问视图时通过过滤语句。