Sql 将多个表合并在一起,并根据聚合字段筛选出所选内容。
我正在创建一个基于多个表联合在一起的视图,并且我正在尝试只包含有记录的结果。这是我目前掌握的代码:Sql 将多个表合并在一起,并根据聚合字段筛选出所选内容。,sql,sql-server,tsql,Sql,Sql Server,Tsql,我正在创建一个基于多个表联合在一起的视图,并且我正在尝试只包含有记录的结果。这是我目前掌握的代码: SELECT '001' AS ReportNumber ,'RPT001' AS ReportName ,ISNULL(SUM(1),0) AS ActiveReportCount FROM [DBNAME].[dbo].[V_Rpt001] UNION ALL SELECT '002' AS ReportNumber ,'RPT_002' AS ReportName ,ISNULL
SELECT
'001' AS ReportNumber
,'RPT001' AS ReportName
,ISNULL(SUM(1),0) AS ActiveReportCount
FROM [DBNAME].[dbo].[V_Rpt001]
UNION ALL
SELECT
'002' AS ReportNumber
,'RPT_002' AS ReportName
,ISNULL(SUM(1),0) AS ActiveReportCount
FROM [DBNAME].[dbo].[V_Rpt001]
WHERE SUM(1)> 0
这不起作用,因为它希望按某些内容对其进行分组,但唯一的其他选择是文本
感谢您的帮助
谢谢这是你想要的吗
SELECT *
FROM ((SELECT '001' AS ReportNumber, 'RPT001' AS ReportName, ISNULL(SUM(1),0) AS ActiveReportCount
FROM [DBNAME].[dbo].[V_Rpt001]
) UNION ALL
(SELECT '002' AS ReportNumber, 'RPT_002' AS ReportName, ISNULL(SUM(1),0) AS ActiveReportCount
FROM [DBNAME].[dbo].[V_Rpt001]
)
) r
WHERE ActiveReportCount > 0;
是的。不知道为什么我以前没有看到它。谢谢