私のSPのパラメータとしてColumn名を渡したいそして私のtat列が最初のテーブル(Batch_Master)に存在する場合、その列から値を取得したい、
そして、その列が 2 番目のテーブル (GTIN_Master) に存在する場合、tat テーブルの列から値をフェッチしたい場合、各テーブルには次のような列があります.. Batch_Master (Batch_M_id、GTIN(主キー)、....etc GTIN_Master (GTIN (外部キー) )、..等)
私はBatch_M_idと列名をパラメータとして持っています..
注: ランダムなデータ型を持つ列名、時間 int または時間 datetime など
SPフォローしてみる
CREATE PROCEDURE dbo.StoredProcedure2
@columnName varchar(50),
@batchmId int
AS
if exists(select * from sys.columns
where Name = N'columnName' and Object_ID = Object_ID(NBatch_Master'))
begin
select @columnName from Batch_Master
end
else
begin
select @columnName
from GTIN_Master inner join Batch_Master
on GTIN_Master.GTIN = Batch_Master.GTIN
where Batch_M_id =@batchmId
end
RETURN