Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
首先显示第二个查询-SQL Server_Sql_Sql Server_Stored Procedures - Fatal编程技术网

首先显示第二个查询-SQL Server

首先显示第二个查询-SQL Server,sql,sql-server,stored-procedures,Sql,Sql Server,Stored Procedures,我是否可以将第二个查询显示为第一个输出,而不是第三个查询。当我执行存储过程时,第三个查询的输出首先显示,然后显示第一个查询,最后显示第二个查询。如果GUID都相等,如何对其进行排序以相应地显示?添加另一个参数并按其排序: ALTER PROCEDURE [dbo].[SP] AS BEGIN SELECT CMS_ORG.GUID, CM_ORG.NAME AS Name FROM CMS_ORG UNION SELECT CMS_ORG.GUID, CMS_O

我是否可以将第二个查询显示为第一个输出,而不是第三个查询。当我执行存储过程时,第三个查询的输出首先显示,然后显示第一个查询,最后显示第二个查询。如果GUID都相等,如何对其进行排序以相应地显示?

添加另一个参数并按其排序:

ALTER PROCEDURE [dbo].[SP]
AS
BEGIN
    SELECT CMS_ORG.GUID, CM_ORG.NAME AS Name
    FROM CMS_ORG 
    UNION
    SELECT CMS_ORG.GUID, CMS_ORG_HISTORY.NAME
    FROM CMS_ORG_HISTORY INNER JOIN CMS_ORG ON CMS_ORG_HISTORY.GUID = CMS_ORG.GUID 
    UNION
    SELECT CMS_SHARE.GUID,CMS_SHARE.NAME
    FROM  CMS_ORG INNER JOIN CMS_SHARE ON CMS_ORG.GUID = CMS_SHARE.GUID 
END
只需按您想要的顺序更改数字

ALTER PROCEDURE [dbo].[SP]
AS
BEGIN
    SET NOCOUNT ON;
    SELECT CMS_ORG.GUID, CM_ORG.NAME AS Name, 1 as ord
    FROM CMS_ORG 
    UNION
    SELECT CMS_ORG.GUID, CMS_ORG_HISTORY.NAME, 2 as ord
    FROM CMS_ORG_HISTORY INNER JOIN CMS_ORG ON CMS_ORG_HISTORY.GUID = CMS_ORG.GUID 
    UNION
    SELECT CMS_SHARE.GUID,CMS_SHARE.NAME, 3 as ord
    FROM  CMS_ORG INNER JOIN CMS_SHARE ON CMS_ORG.GUID = CMS_SHARE.GUID 
    order by ord
END