能不能把两个存储过程出来的表连接一下呢

fly135 2006-07-21 08:39:23
能不能把两个存储过程出来的表连接一下呢

比如如下的代码。运行后会出来2个表格。能不能把这两个表格当作普通的查询 来进行 union 或者join 操作呢

注:我这里只是个例子。如果直接一行代码的我就不给分了。我想要:“把两个存储过程出来的表连接一下”





--建立表
Create Table Test
(id Int,name nvarchar(20))
--插入数据

Insert Test Select 1,'a'
Union all Select 1,'b'
Union all Select 2,'c'
Union all Select 3,'d'
Union all Select 4,'e'
GO
--建立存储过程
Create ProceDure P_1
As
select * from Test where id<2
GO

Create ProceDure P_2
As
select * from Test where id>2
GO
--运行
exec P_1
exec P_2
Go
--删除
Drop Table Test
Drop ProceDure P_1
Drop ProceDure P_2
...全文
206 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
paoluo 2006-07-21
  • 打赏
  • 举报
回复
呵,我今天總共才答了幾個技術帖子。
fly135 2006-07-21
  • 打赏
  • 举报
回复
哈哈 鱼兄。我今天送你180分了
paoluo 2006-07-21
  • 打赏
  • 举报
回复
效率,沒有測試過。

不過,有時為了實現效果,效率肯定會犧牲一些的。
fly135 2006-07-21
  • 打赏
  • 举报
回复
这样的话是不是效率很低呢
Yang_ 2006-07-21
  • 打赏
  • 举报
回复
还是用临时表限制少些
liangpei2008 2006-07-21
  • 打赏
  • 举报
回复
鱼兄厉害!学习!
paoluo 2006-07-21
  • 打赏
  • 举报
回复
不過不用臨時表,也有辦法實現


--建立表
Create Table Test
(id Int,name nvarchar(20))
--插入数据

Insert Test Select 1,'a'
Union all Select 1,'b'
Union all Select 2,'c'
Union all Select 3,'d'
Union all Select 4,'e'
GO
--建立存储过程
Create ProceDure P_1
As
select * from Test where id<2
GO

Create ProceDure P_2
As
select * from Test where id>2
GO
--运行
Select * From OpenRowSet('sqloledb','Trusted_Connection=yes','exec Test.dbo.P_1')
Union All
Select * From OpenRowSet('sqloledb','Trusted_Connection=yes','exec Test.dbo.P_2')
Go
--删除
Drop Table Test
Drop ProceDure P_1
Drop ProceDure P_2




--將數據庫名TEST改為你自己的數據庫名
paoluo 2006-07-21
  • 打赏
  • 举报
回复
通常都是借用臨時表的

--建立表
Create Table Test
(id Int,name nvarchar(20))
--插入数据

Insert Test Select 1,'a'
Union all Select 1,'b'
Union all Select 2,'c'
Union all Select 3,'d'
Union all Select 4,'e'
GO
--建立存储过程
Create ProceDure P_1
As
select * from Test where id<2
GO

Create ProceDure P_2
As
select * from Test where id>2
GO
--运行
Create Table #T
(id Int,name nvarchar(20))
Insert #T exec P_1
Insert #T exec P_2

Select * From #T

Drop Table #T
Go
--删除
Drop Table Test
Drop ProceDure P_1
Drop ProceDure P_2

34,873

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧