我正在尝试执行sp作为子查询,并将sp的结果集作为外部查询的列。像这样的事情
Select U.FirstName , (exec SomeSP ) as columnFromSP from User U
这有可能我在谷歌上搜了很多遍却什么也没找到。
更新
我不能使用#temp表,因为我试图不使用#temp表。
发布于 2014-12-23 18:36:01
如果您能够将USP转换为表值UDF,那么您将在FROM语句中使用UDF。
CREATE FUNCTION dbo.SomeUDF
(
-- Add the parameters for the function here
@param varchar(1000)
)
RETURNS TABLE
AS
RETURN
(
SELECT @param as Value
)
GO
SELECT
a.Value,
'B' as Value2
FROM dbo.SomeUDF('ABC') a发布于 2014-12-23 17:15:50
不可能,但你可以绕开它
但是,这假设您有一个从存储的proc返回的可连接表达式(一个可以与user表中的字段匹配)。如果存储过程返回一行,则使用1=1或类似的条件。
发布于 2014-12-23 17:16:27
-- Declare a temp table and column(for eg you have only 1 column)
CREATE TABLE #TEMP
(
FirstName VARCHAR(50)
)
-- The results after execution will be inserted to this table
INSERT INTO #TEMP
Exec SomeSP 'Params'
-- Select records from both tables in all combinations
SELECT U.FirstName , COL1 as columnFromSP
from User U
CROSS JOIN #TEMPhttps://stackoverflow.com/questions/27624972
复制相似问题