Ir para o conteúdo

Agrupar por no Jitterbit App Builder

Em SQL, o GROUP BY a declaração é usada com funções agregadas (COUNT(), MAX(), MIN(), SUM(), AVG()) para agrupar as linhas resultantes por uma ou mais colunas. Este artigo explicará como usar GROUP BY na camada de negócios do App Builder.

Etapa 1: Crie uma subconsulta

Para alavancar GROUP BY no App Builder, você primeiro precisará criar uma Subconsulta objeto que fornece uma função agregada. A regra Subquery também deve especificar as colunas que você deseja GROUP BY. Se você estiver familiarizado com SQL, você pode confirmar a Subconsulta GROUP BY lógica visualizando a aba SQL disponível na tela Regra na Camada de Negócios.

Exemplo de regra de subconsulta

Neste exemplo, criaremos uma regra de Subconsulta chamada Customer (Group By Subquery) que tem como alvo a tabela Customer. Esta regra fornecerá uma COUNT() função agregada e incluir as colunas que queremos GROUP BY, que são CustomerID e ProductName.

Visualização da aba Colunas:

columnsview.png

Visualização da aba SQL:

SELECT
       C.ProductName AS ProductName,
       Count(1) AS Count,
       C.CustomerID AS CustomerID
 FROM
       Customer AS C
 GROUP BY
      C.ProductName ,
C.CustomerID

Etapa 2: Junte a subconsulta a um objeto comercial

Depois de ter uma Subconsulta com uma função agregada, junte a Subconsulta a um Objeto de negócios. Depois que o Business Object for criado, você pode usá-lo para Publicar na Camada de IU e expor os dados e informações resultantes em uma página do aplicativo.

Exemplo de regra de objeto de negócios

Seguindo o exemplo da Subconsulta, uniremos o Cliente (Agrupar por Subconsulta) à tabela Cliente e estabeleceremos uma junção usando o campo de chave comum entre os dois objetos, que neste cenário é CustomerID.

Visualização da aba Tabelas:

publishuilayer.png

Visualização da aba SQL:

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 ) )