存储过程的返回表

时间:2014-05-08 06:29:26

标签: sql sql-server stored-procedures

存储过程可以用作表吗?我很好奇,如果存储过程可以用于加入表格或在子查询中使用,这里有一些我想到的样本

Select * from table00 tab
Left join (mystoredproc 'param1', 'param2') st
On tab.col1 = st.col1
Where st.col2 = '1'

或类似

Select * from table00
Where col1 in (select col1 from mystoredproc 'param')

有可能吗? 我知道我可以在功能上做到这一点,但我只是想知道它是否可以

(对不起语法,这是我第一次来这里) 谢谢你,快乐学习!

1 个答案:

答案 0 :(得分:1)

不,存储过程不返回表,也不能用作查询源。

可以做的是

INSERT #tbl EXEC <proc_name< {params}

然后在查询中使用#tbl。