我需要使用SQL报表构建器在SCCM中创建报表。当前,报告在单独的行中显示每个客户端上每个用户的每个应用程序(很好)。
但是我还需要一个函数,该函数可以向我显示每个应用程序的启动计数总数(由ID号标识)。
当前报告输出:
所以我需要的最终结果应该是:
ID Manufacturer Name Filename LaunchCountTotal
32 7-zip 7-zip 7z.exe 543
当前报告构建器的布局:
这是用于数据集的查询:
select diin_applications_table.manufacturer, diin_applications_table.id, diin_applications_table.name, diin_applications_table.version, diin_applications_table.filename, RecentlyUsedApps_DATA_prod.LaunchCount00, RecentlyUsedApps_DATA_prod.LastUsedTime00, RecentlyUsedApps_DATA_prod.LastUserName00, System_DATA_prod.Name0
from diin_applications_table
INNER JOIN RecentlyUsedApps_DATA_prod ON diin_applications_table.Filename=RecentlyUsedApps_DATA_prod.ExplorerFileName00
INNER JOIN System_DATA_prod ON
RecentlyUsedApps_DATA_prod.MachineID=System_DATA_prod.MachineID
您应该可以通过CTE
实现此目标,如下所示:
with cte as (
select diin_applications_table.manufacturer, diin_applications_table.id, diin_applications_table.name, diin_applications_table.version, diin_applications_table.filename, RecentlyUsedApps_DATA_prod.LaunchCount00, RecentlyUsedApps_DATA_prod.LastUsedTime00, RecentlyUsedApps_DATA_prod.LastUserName00, System_DATA_prod.Name0
from diin_applications_table
INNER JOIN RecentlyUsedApps_DATA_prod ON diin_applications_table.Filename=RecentlyUsedApps_DATA_prod.ExplorerFileName00
INNER JOIN System_DATA_prod ON
RecentlyUsedApps_DATA_prod.MachineID=System_DATA_prod.MachineID
)
select
ID
, Manufacturer
, [Name]
, [FileName]
, sum(LaunchCount) LaunchCountTotal
from cte
group by ID
, Manufacturer
, [Name]
, [FileName]
希望这会有所帮助。