編輯:我的錯誤是我在第一個select語句之後有一個「去」,並且會導致@variableName超出範圍。在select語句中使用一個單元格的值(與sqlcmd一起運行)
我有一堆依賴於對方的查詢,我想使用第一個返回的值的另一個。例如,我想用第一次查詢的產品ID,:
SELECT ProductID,
FROM mproducts
WHERE (ProductCode='$(product)'
or ProductCode='$(product)'
or BuildSysProductCode='$(product)');
在第二個
SELECT ProductVersionID,
FROM cb_mproductversions
WHERE ProductID=***variableName***
go
我看着變量
,和我見過的存儲值到的幾種方法喜歡做
DECLARE @variableName
SELECT @variableName AS productID
FROM mproducts
...
變量,但似乎@variableName的範圍僅僅是下一個SELECT語句,當我一前一後得到的那些權後聲明它說,它不是declar編輯。
謝謝。我的錯誤是我在第一個select語句之後有一個「go」,這會導致@variableName超出範圍。 –
@AryanGoharzad注意到,如果第一個查詢返回多個'productID',則會失敗。 –
嗯..很好的接收。我想我會永遠得到「前1名」,因爲產品ID是唯一的。 –