Pass variable to procedure output parameters
1> create table employee( 2> ID int, 3> name nvarchar (10), 4> salary int, 5> start_date datetime, 6> city nvarchar (10), 7> region char (1)) 8> GO 1> 2> insert into employee (ID, name, salary, start_date, city, region) 3> values (1, 'Jason', 40420, '02/01/94', 'New York', 'W') 4> GO (1 rows affected) 1> insert into employee (ID, name, salary, start_date, city, region) 2> values (2, 'Robert',14420, '01/02/95', 'Vancouver','N') 3> GO (1 rows affected) 1> insert into employee (ID, name, salary, start_date, city, region) 2> values (3, 'Celia', 24020, '12/03/96', 'Toronto', 'W') 3> GO (1 rows affected) 1> insert into employee (ID, name, salary, start_date, city, region) 2> values (4, 'Linda', 40620, '11/04/97', 'New York', 'N') 3> GO (1 rows affected) 1> insert into employee (ID, name, salary, start_date, city, region) 2> values (5, 'David', 80026, '10/05/98', 'Vancouver','W') 3> GO (1 rows affected) 1> insert into employee (ID, name, salary, start_date, city, region) 2> values (6, 'James', 70060, '09/06/99', 'Toronto', 'N') 3> GO (1 rows affected) 1> insert into employee (ID, name, salary, start_date, city, region) 2> values (7, 'Alison',90620, '08/07/00', 'New York', 'W') 3> GO (1 rows affected) 1> insert into employee (ID, name, salary, start_date, city, region) 2> values (8, 'Chris', 26020, '07/08/01', 'Vancouver','N') 3> GO (1 rows affected) 1> insert into employee (ID, name, salary, start_date, city, region) 2> values (9, 'Mary', 60020, '06/09/02', 'Toronto', 'W') 3> GO (1 rows affected) 1> 2> select * from employee 3> GO ID name salary start_date city region ----------- ---------- ----------- ----------------------- ---------- ------ 1 Jason 40420 1994-02-01 00:00:00.000 New York W 2 Robert 14420 1995-01-02 00:00:00.000 Vancouver N 3 Celia 24020 1996-12-03 00:00:00.000 Toronto W 4 Linda 40620 1997-11-04 00:00:00.000 New York N 5 David 80026 1998-10-05 00:00:00.000 Vancouver W 6 James 70060 1999-09-06 00:00:00.000 Toronto N 7 Alison 90620 2000-08-07 00:00:00.000 New York W 8 Chris 26020 2001-07-08 00:00:00.000 Vancouver N 9 Mary 60020 2002-06-09 00:00:00.000 Toronto W (9 rows affected) 1> 2> 3> drop view myView 4> GO 1> 2> CREATE VIEW dbo.myView 3> AS 4> SELECT ID, Name, Salary 5> FROM Employee 6> GO 1> 2> drop procedure GetData 3> GO 1> 2> CREATE PROCEDURE GetData 3> @minSalary money OUTPUT, 4> @maxSalary money OUTPUT 5> AS 6> SET @minSalary = 7> (SELECT TOP 1 salary FROM dbo.myView ORDER BY salary) 8> SET @maxSalary = 9> (SELECT TOP 1 salary 10> FROM dbo.myView ORDER BY salary DESC) 11> GO 1> 2> DECLARE @lclmin money, @lclmax money 3> 4> EXEC GetData @minSalary = @lclmin OUTPUT, 5> @maxSalary = @lclmax OUTPUT 6> 7> SELECT @lclmin 'Min. SubTotal', @lclmax 'Max. SubTotal' 8> GO Min. SubTotal Max. SubTotal --------------------- --------------------- 14420.0000 90620.0000 (1 rows affected) 1> 2> 3> 4> 5> drop table employee 6> GO 1>