如何在带参数的视图之间建立联合?

时间:2013-10-31 11:32:58

标签: sql

假设我有两个带参数的视图:

如何在视图之间进行缩减

例如:

CREATE VIEW1 patientGP AS
SELECT GP
FROM patientA
WHERE PFirstName = ['Please input patient name: '];


CREATE VIEW2 patientGP AS
SELECT GP
FROM patientB
WHERE PLastName = ['Please input patient name: '];

如何在VIEW1和VIEW2之间使用所有参数进行UNION?

1 个答案:

答案 0 :(得分:1)

要在视图中使用参数,一种方法是创建一个包,该包将设置参数的值并具有可以调用以获取这些值的函数。

创建两个包,每个包含一个函数以获取输入。然后创建您的视图,其中参数可以称为YOURVIEW_PKG1.PARAM1YOURVIEW_PKG2.PARAM2等。

然后调用包来设置视图的值。

exec YOURVIEW_PKG1.SET_VALUES('VAL1');
exec YOURVIEW_PKG2.SET_VALUES('VAL2');

然后

select * from yourview1 UNION select * from yourview2;