データはので、ここでのパラメータまたはクエリに提供される方法の文脈上の問題にはほとんど情報があり、いくつかのオプションがあります。
は、複数回のストアドプロシージャを作成し、それを呼び出す:
-- Stored procedure
create procedure dbo.GetSalesByCompany
@companyName varchar(25)
AS
SET NOCOUNT ON;
Select * from sales where Company_Name = @company1;
--Usage
exec dbo.GetSalesByCompany 'AA';
exec dbo.GetSalesByCompany 'BB';
-- Usage with params
DECLARE @company1 varchar(25)
set @company1 = 'AA';
exec dbo.GetSalesByCompany @company1;
set @company1 = 'BB';
exec dbo.GetSalesByCompany @company1;
ユーザ定義のテーブル値関数を作成します。必要であれば、これは、ストアド・プロシージャから呼び出すことができます。
-- User defined table-valued function
Create Function dbo.udf_GetSalesByCompany
(@companyName varchar(25))
RETURNS TABLE AS
RETURN Select * from sales where Company_Name = @company1;
--Usage
SELECT * FROM dbo.udf_GetSalesByCompany('AA');
SELECT * FROM dbo.udf_GetSalesByCompany('BB');
-- Usage with params
DECLARE @company1 varchar(25)
set @company1 = 'AA';
SELECT * FROM dbo.udf_GetSalesByCompany(@company1);
set @company1 = 'BB';
SELECT * FROM dbo.udf_GetSalesByCompany(@company1);
それとも文は、この場合には、複数のフィルタ値のため、一度クエリを呼び出すために取得するには、会社名「IN」。
--Use and "IN" statement
Select * from sales where Company_Name IN('AA', 'BB')
どのようにパラメータに異なる値が設定されていますか?あなたはあなたの全体の手順を示すことができますか? –