【发布时间】:2012-09-05 09:11:42
【问题描述】:
我需要执行 SQL 查询的结果(已经以 SQL 的形式)本身以获得最终结果。
所以,应该是这样,在我执行的第一个查询中
Select Top(1) RequiredQuery as ReqQry from EPMaster
我将在ReqQry 中获得另一个查询结果,然后以另一个查询的形式执行该查询以获得最终结果。
第二个查询也需要在 where 子句中传递一些参数,就像我做的那样:
Select Top(1) RequiredQuery as ReqQry
from EPMaster
--ReqQry after its execution returns:
Select Top(1) (FirstName + ' ' + LastName) as FullName
from DPMaster
where DmID = @DomainID and PnID = @PersonID
我将从我的 C# 项目的 DAL 层传递参数 @DomainID 和 @PersonID。
所以我想应该借助存储过程来完成。
------更多解释-------------
这里,一个 SQL 语句被执行以获得下一个 SQL 语句,它将是前一个语句的结果。当您执行第一个查询时,您会在结果中获得第二个查询,您再次执行以获得最终结果
第二个查询需要两个参数来执行,它们是@DomainID 和@PersonID,它们将从我的 C# 项目中传递给我。因此,如果我创建一个存储过程来处理所有这些并传递所需的参数,以及我项目中的第一个查询,它应该首先执行第一个查询然后执行第二个查询(使用参数PersonID 和DomainID)这是作为第一次查询的结果收到的,之后我得到了最终结果。
【问题讨论】:
-
我无法正确理解您的需求。但是您想在存储过程中使用动态 SQL 吗?
-
这里,执行了1条SQL语句来获取下一条SQL语句,它将是前一条语句的结果。当您执行第一个查询时,您会在结果中获得第二个查询,您再次执行以获得最终结果。
标签: sql sql-server-2005 stored-procedures