Создать сумму значений строк в SQL построителе отчетов - PullRequest
0 голосов
/ 09 апреля 2020

Мне нужно создать отчет в SCCM с помощью построителя отчетов SQL. В настоящее время отчет показывает каждое приложение от каждого пользователя на каждом клиенте в отдельной строке (что нормально).

Но мне также нужна функция, которая показывает мне общее количество запусков для каждого приложения (идентифицируется по идентификатору). число).

Вывод текущего отчета:

Output of the report

Итак, конечный результат, который мне нужен, должен быть:

ID        Manufacturer        Name         Filename          LaunchCountTotal
32        7-zip               7-zip        7z.exe            543

Текущий макет построителя отчетов:

Current report builder layout

Этот запрос используется для набора данных:

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

1 Ответ

1 голос
/ 09 апреля 2020

Вы сможете достичь этого с 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]  

Надеюсь, это поможет.

...