Gruppieren nach im Jitterbit App Builder
In SQL ist die GROUP BY
-Anweisung wird mit Aggregatfunktionen verwendet (COUNT()
, MAX()
, MIN()
, SUM()
, AVG()
), um die resultierenden Zeilen nach einer oder mehreren Spalten zu gruppieren. Dieser Artikel erklärt Schritt für Schritt, wie Sie GROUP BY
in der Business-Ebene des App Builders.
Schritt 1: Erstellen einer Unterabfrage
Um zu nutzen GROUP BY
im App Builder müssen Sie zuerst eine Unterabfrage erstellen-Objekt, das eine Aggregatfunktion bereitstellt. Die Unterabfrageregel muss auch die Spalten angeben, die Sie GROUP BY
Wenn Sie mit SQL vertraut sind, können Sie die Unterabfrage bestätigen GROUP BY
Logik, indem Sie die Tab SQL anzeigen, die auf dem Regelbildschirm in der Business-Schicht verfügbar ist.
Beispiel für eine Unterabfrageregel
In diesem Beispiel erstellen wir eine Unterabfrageregel namens „Kunde (Gruppieren nach Unterabfrage)“, die auf die Tabelle „Kunde“ abzielt. Diese Regel liefert eine COUNT()
Aggregatfunktion und schließen Sie die Spalten ein, die wir GROUP BY
, nämlich CustomerID und ProductName.
Tab:
SQL - Registerkartenansicht:
SELECT
C.ProductName AS ProductName,
Count(1) AS Count,
C.CustomerID AS CustomerID
FROM
Customer AS C
GROUP BY
C.ProductName ,
C.CustomerID
Schritt 2: Unterabfrage mit einem Geschäftsobjekt verknüpfen
Nachdem Sie eine Unterabfrage mit einer Aggregatfunktion erstellt haben, verknüpfen Sie diese mit einem Geschäftsobjekt. Sobald das Geschäftsobjekt erstellt ist, können Sie es auf der UI-Ebene veröffentlichen und die resultierenden Daten und Informationen auf einer Anwendungsseite bereitstellen.
Beispiel einer Geschäftsobjektregel
Gemäß dem Unterabfragebeispiel verknüpfen wir den Kunden (Group By-Unterabfrage) mit der Kundentabelle und stellen eine Verknüpfung mithilfe des gemeinsamen Schlüsselfelds zwischen den beiden Objekten her, das in diesem Szenario CustomerID ist.
Tabellen - Registerkartenansicht:
SQL - Registerkartenansicht:
SELECT
C.CustomerID AS CustomerID,
C.ProductName AS ProductName,
C.OrderDate AS OrderDate
FROM
"Customer (Group By Subquery)" AS CGBS
INNER JOIN
Customer AS C ON
( (CGBS.CustomerID = C.CustomerID ) )