【发布时间】:2012-06-27 14:04:04
【问题描述】:
编辑:我的错误是我在第一个 select 语句之后有一个“go”,这会导致 @variableName 超出范围。
我有一堆相互依赖的查询,我想在另一个查询中使用第一个返回的值。例如我想使用第一个查询的产品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 语句,当我到达 DECLARE 之后的那个之后,它说它没有被声明。
【问题讨论】:
标签: sql sql-server tsql plsql sqlcmd