我想使用输出多个记录集的多个选择语句创建一个视图

Posted

技术标签:

【中文标题】我想使用输出多个记录集的多个选择语句创建一个视图【英文标题】:I'd like to create a view using multiple select statements that outputs multiple record sets 【发布时间】:2017-09-18 17:53:43 【问题描述】:

例如。

CREATE VIEW DBO.EXAMPLE1 
AS
SELECT * FROM BADGE WHERE BADGE.STATUS =1
SELECT * FROM EMP JOIN BADGE ON EMP.ID = BADGE.EMPID WHERE BADGE.STATUS =1
GO

我想要输出如下:

ID  EMPID   STATUS
1   1        1
5   5        1
7   7        1
11  11       1
12  12       1

ID  LASTNAME    FIRSTNAME
1   Lake        Lisa
4   Mattil      Umar
5   Thottiyil   Khalid
87  Lal         NULL
7   shaikh      Nabil

【问题讨论】:

根据定义,视图是单个选择语句。如果您需要两个语句,请创建两个视图。或者,您可以创建一个包含多个结果集的存储过程(尽管在 SSMS 中您不能很容易地与它们进行交互) 在 SO 上,您应该尝试自己编写代码。在 doing more research 之后,如果您有问题,您可以发布您尝试过的内容,并清楚地解释什么不起作用并提供一个 Minimal, Complete, and Verifiable example. 【参考方案1】:

一个视图不能返回多个记录集。只有存储过程可以做到这一点。

【讨论】:

以上是关于我想使用输出多个记录集的多个选择语句创建一个视图的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 SQL Server 2005 创建基于 SQL 语句集的视图?

在架构内创建多个视图 - SQL Server

如何使用 MySQL 连接语句选择与链接表中的多个值匹配的记录?

C#调用Oracle带输出数据集的存储过程

多个摄像头视图显示相同的摄像头馈送

SQL查询语句查询多个数据