J'essaie de créer une table dans SSRS où une seule ligne affiche la somme des quantités de travail pour TypeOfWork , à partir de deux tables de base de données distinctes.Après avoir créé une union de deux tables dans SQL, comment afficher la somme de chaque table dans une seule ligne dans SSRS Tablette
J'ai créé un ensemble de données avec une union (le sql montré est simplifié, mais c'est l'idée de base) qui m'a permis d'avoir des sommes de chaque type de travail dans chaque table - en fonction du regroupement. Je peux facilement montrer les deux sommes, pour chaque type de travail, à partir des deux tables dans leur propre ligne sur le tablier SSRS. Tels que:
Zone de travail | Type de travail | Nouvelle somme de table
Zone de travail | Type de travail | Old Table Somme
... et répéter
Mais comment montrer les sommes dans une seule ligne, en tant que tel:
Zone de travail | Type de travail | Nouvelle somme de table | Old Table Somme
Voici le SQL de base:
SELECT SourceTable, WorkArea, TypeOfWork, Sum(WorkAmount)
FROM
(
SELECT 'OldTable' AS SourceTable, o.*
FROM Old o
UNION ALL
SELECT
'NewTable' AS SourceTable
, NEWID()
, '2A077AC6-8040-49CB-B1FD-CD96D0A30533' AS [OldGuid]
, n.*
FROM New n
) AS ReportTable
GROUP BY WorkArea, TypeOfWork, SourceTable
Fox. Les résultats étaient similaires, mais votre CAS m'a permis d'avoir un moyen pratique de nommer chacun des totaux. Je reçois toujours des lignes séparées pour les sommes pour chaque table. J'ai essayé de grouper sur TypeOfWork dans le groupe de lignes Tablix, mais ensuite il n'affichait que les sommes de l'ancienne table et n'affichait pas les deux sommes. J'aurais pensé grouper sur le type de travail le ferait, mais malheureusement je prends juste l'information de vieille table. –
Mon mauvais, vous devez supprimer le groupe par SourceTable - J'ai corrigé ma requête ci-dessus. –
lorsque j'essaye dans SQL Server Management Studio, j'obtiens cette erreur: La colonne 'ReportTable.SourceTable' n'est pas valide dans la liste de sélection car elle n'est contenue ni dans une fonction d'agrégat ni dans la clause GROUP BY. –