Visão geral
Este exemplo usa a função Only para mostrar uma tabela linha por linha de registros de um único mês. Para isso, a análise de conjunto é usada para delimitar o conjunto de registros desejado. A análise de conjunto requer pelo menos uma medida, porém, como não precisamos agregar o conjunto de registros, podemos usar efetivamente a função de agregação Only para hospedar o escopo da análise de conjunto.
Abra o editor da carga de dados e adicione o script de carregamento abaixo em uma nova seção.
O script de carregamento contém:
Um conjunto de dados que é carregado em uma tabela de dados denominada Example.
Uma instrução de LOAD anterior que deriva o campo MonthYear do campo Date truncando o dia do mês, usando a função MonthStart e retornando uma representação de data do dia 1º de cada mês. Esse resultado é fornecido à função Date para definir o formato de exibição para MMM YY, por exemplo, Jan 24.
Os campos a seguir na tabela de dados:
Date
RecordID
StoreProduct
Sales
Store
Script de carregamento
Example:
Load
*,
date(MonthStart (Date),'MMM YY') AS MonthYear
inline [
Date, RecordID, StoreProduct, Sales, Store
2024-01-01, 1, Apple, 100, A
2024-01-15, 2, Banana, 80, B
2024-01-30, 3, Carrot, 50, C
2024-02-05, 4, Apple, 120, A
2024-02-20, 5, Banana, 90, B
2024-02-28, 6, Carrot, 60, D
2024-03-10, 7, Apple, 110, A
2024-03-22, 8, Banana, 85, B
2024-03-31, 9, Carrot, 55, C
];
Resultados
Carregue os dados e abra uma pasta. Crie uma nova tabela e adicione esses campos como dimensões:
MonthYear
RecordID
Date
StoreProduct
Store
Crie as seguintes medidas:
=Only({$<MonthYear={'$(=MaxString(MonthYear))'}>} Sales) para avaliar o valor de Sales e retornar somente aqueles em que MonthYear é o último (mais recente) MonthYear disponível, com base nas seleções atuais da tabela. A expansão de sinal de dólar ($) realiza um cálculo em linha usando a função MaxString, $(=MaxString(MonthYear)), que retorna a representação de texto do último valor de MonthYear.
Nota informativaA tentativa de filtrar MonthYear com base na representação numérica, por exemplo, usando a função Max , Max(MonthYear), não produziria nenhum resultado. A análise de conjunto aplica seleções de filtros com base apenas na representação de texto de qualquer tipo de dado duplo; um tipo de dado com uma representação numérica e textual, como Date.
Results tableMonthYear | RecordID | Date | StoreProduct | Only({$<MonthYear={‘$(=MaxString(MonthYear))’}>} Sales) |
---|
Mar 24 | 7 | 2024-03-10 | Apple | 110 |
Mar 24 | 8 | 2024-03-22 | Banana | 85 |
Mar 24 | 9 | 2024-03-31 | Carrot | 55 |
A saída da função Only produz uma tabela de registros cujo padrão é apresentar o valor de venda para o MonthYear mais recente disponível nos dados. Se você selecionar um mês anterior na coluna MonthYear, como Feb 24, aparecerá o valor de vendas mais recente desse mês.