[英]Passing Value to parameter in stored procedure
我有一個大於500的值列表,每次我必須將這些值傳遞給以下存儲過程時。 是否可以動態調用這些值?
RDBMS: SQL Server 2014
下面的一小部分@value示例。
declare @valuetable table
(
value varchar(50)
)
insert @valuetable
select video union
select audio union
select hayward union
select abott union
select gsk
碼:
DECLARE @value VARCHAR(24) SET @value = 'video'
DECLARE @DAYS INT SET @DAYS = -30
SELECT * INTO #XTP1 FROM (
SELECT DISTINCT 'START' AS DTT, DATEADD(D,@DAYS,DATEACTIONED) AS DT FROM NEWREPORTS
WHERE value = @value
UNION
SELECT DISTINCT 'CHANGE' AS DTT, DATEACTIONED AS DT FROM NEWREPORTS
WHERE value = @value
)r
謝謝
因此,您需要做的是在#XTP1中添加一列以存儲值名稱。 然后,您可以執行以下操作:
declare @valuetable table
(
value varchar(50)
)
insert @valuetable
select video union
select audio union
select hayward union
select abott union
select gsk
SELECT * INTO #XTP1 FROM (
SELECT DISTINCT v.value, 'START' AS DTT, DATEADD(D,@DAYS,DATEACTIONED) AS DT
FROM NEWREPORTS n INNER JOIN @valuetable v ON n.value = v.value
UNION
SELECT DISTINCT v.value, 'CHANGE' AS DTT, DATEACTIONED AS DT
FROM NEWREPORTS n INNER JOIN @valuetable v ON n.value = v.value
)r
現在,您可以一次性從#XTP1中檢索所有內容。 您可能需要在ORDER BY中包含“值”。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.