Eventos
Junte-se a nós na FabCon Vegas
31 de mar., 23 - 2 de abr., 23
O melhor evento liderado pela comunidade Microsoft Fabric, Power BI, SQL e AI. 31 de março a 2 de abril de 2025.
Registre-se hoje mesmoNão há mais suporte para esse navegador.
Atualize o Microsoft Edge para aproveitar os recursos, o suporte técnico e as atualizações de segurança mais recentes.
Aplica-se a:Coluna calculadaTabela calculadaMedidaCálculo visual
Retorna várias linhas posicionadas dentro do intervalo determinado.
WINDOW ( from[, from_type], to[, to_type][, <relation> or <axis>][, <orderBy>][, <blanks>][, <partitionBy>][, <matchBy>][, <reset>] )
Termo | Definição |
---|---|
from |
Indica onde a janela é iniciada. Pode ser qualquer expressão DAX que retorna um valor escalar.
O comportamento depende do parâmetro from_type : – se from_type for REL, o número de linhas a serem retornadas (valor negativo) ou para frente (valor positivo) da linha atual para obter a primeira linha na janela.
- Se from_type for ABS e from for positivo, será a posição do início da janela desde o início da partição. A indexação é baseada em 1. Por exemplo, 1 significa que a janela começa desde o início da partição. Se from for negativo, será a posição do início da janela a partir do final da partição. -1 significa a última linha na partição. |
from_type | Modifica o comportamento do parâmetro from . Os valores possíveis são ABS (absoluto) e REL (relativo). O padrão é REL. |
to |
O mesmo que from , mas indica o final da janela. A última linha está incluída na janela. |
to_type |
O mesmo que from_type , mas modifica o comportamento de to . |
relation |
(Opcional) Uma expressão de tabela da qual as linhas de saída são retornadas.
Se especificado, todas as colunas em partitionBy deverão vir dela ou de uma tabela relacionada.
Se omitido: - orderBy deve ser especificado explicitamente.- Todas as expressões orderBy e partitionBy devem ser nomes de coluna totalmente qualificados e provenientes de uma única tabela.
- Padrão para ALLSELECTED() de todas as colunas em orderBy e partitionBy . |
axis |
(Opcional) Um eixo na forma visual. Disponível apenas em cálculos visuais e substitui relation . |
orderBy |
(Opcional) Uma cláusula ORDERBY() que contém as expressões que definem como cada partição é classificada.
Se omitido: - relation deve ser especificado explicitamente.
– O padrão é ordenar por cada coluna em relation que ainda não está especificada no partitionBy . |
blanks |
(Opcional) Uma enumeração que define como manipular valores em branco durante a classificação.
Esse parâmetro é reservado para uso futuro. Atualmente, o único valor com suporte é DEFAULT, em que o comportamento para valores numéricos é valores em branco são ordenados entre valores zero e negativos. O comportamento das cadeias de caracteres é que os valores em branco são ordenados antes de todas as cadeias de caracteres, incluindo cadeias de caracteres vazias. |
partitionBy |
(Opcional) Uma cláusula PARTITIONBY() que contém as colunas que definem como relation é particionado. Se omitida, relation será tratada como uma única partição. |
matchBy |
(Opcional) Uma cláusula MATCHBY() que contém as colunas que definem como corresponder dados e identificar a linha atual. |
reset |
(Opcional) Disponível apenas no cálculos visuais. Indica se o cálculo será redefinido e em que nível da hierarquia de colunas da forma visual. Os valores aceitos são: NONE, LOWESTPARENT, HIGHESTPARENT, ou um inteiro. O comportamento depende do sinal do número inteiro: - Se for zero ou omitido, o cálculo não será redefinido. Equivalente a NONE. - Se positivo, o inteiro identificará a coluna começando pela mais alta, independentemente da granularidade. HIGHESTPARENT é equivalente a 1. - Se negativo, o inteiro identificará a coluna a partir da mais baixa, em relação à granularidade atual. LOWESTPARENT é equivalente a -1. |
Todas as linhas da janela.
Com exceção das colunas adicionadas pelas funções de tabela DAX, cada coluna em relation
, quando matchBy
não estiver presente ou cada coluna em matchBy
e partitionBy
, quando matchBy
estiver presente, deve ter um valor externo correspondente para ajudar a definir a linha atual na qual operar. Se from_type
e to_type
ambos tiverem ABS de valor, o seguinte se aplicará somente às colunas partitionBy
:
Se todas as colunas de relation
foram adicionadas por funções de tabela DAX, um erro será retornado.
Se matchBy
estiver presente, WINDOW tentará usar colunas matchBy
e partitionBy
para identificar a linha.
Se matchBy
não estiver presente e as colunas especificadas em orderBy
e partitionBy
não puderem identificar exclusivamente todas as linhas em relation
, então:
orderBy
e cada partição será classificada usando esse novo conjunto de colunas orderBy.Uma tabela vazia será retornada se:
orderBy
ou partitionBy
não existe dentro de relation
.Se WINDOW for usado em uma coluna calculada definida na mesma tabela que relation
e orderBy
for omitido, um erro será retornado.
Se o início da janela for antes da primeira linha, ele será definido como a primeira linha. Da mesma forma, se o final da janela estiver após a última linha da partição, ele será definido como a última linha.
reset
pode ser usado somente em cálculos visuais e não pode ser usado em combinação com orderBy
ou partitionBy
. Se reset
estiver presente, axis
poderá ser especificado, mas relation
não.
A seguinte medida:
3-day Average Price =
AVERAGEX(
WINDOW(
-2,REL,0,REL,
SUMMARIZE(ALLSELECTED('Sales'), 'Date'[Date], 'Product'[Product]),
ORDERBY('Date'[Date]),
KEEP,
PARTITIONBY('Product'[Product])
),
CALCULATE(AVERAGE(Sales[Unit Price]))
)
Retorna a média de 3 dias dos preços unitários de cada produto. Observe que a janela de três dias consiste em três dias em que o produto tem vendas, não necessariamente três dias consecutivos.
A seguinte medida:
RunningSum =
SUMX (
WINDOW (
1, ABS, 0, REL,
ALLSELECTED (
'Date'[Fiscal Year],
'Date'[Month Number Of Year]
),
PARTITIONBY ( 'Date'[Fiscal Year] )
),
[Total Sales]
)
Retorna a soma em execução do Total de Vendas por Número do Mês do Ano, reiniciando a cada Ano Fiscal:
Ano | Número do Mês do Ano | Valor das Vendas | RunningSum |
---|---|---|---|
FY2018 | 1 | US$ 1.327.675 | US$ 1.327.675 |
FY2018 | 2 | US$ 3.936.463 | US$ 5.264.138 |
FY2018 | 3 | US$ 700.873 | US$ 5.965.011 |
FY2018 | 4 | US$ 1.519.275 | US$ 7.484.286 |
FY2018 | 5 | US$ 2.960.378 | US$ 10.444.664 |
FY2018 | 6 | US$ 1.487.671 | US$ 11.932.336 |
FY2018 | 7 | US$ 1.423.357 | US$ 13.355.693 |
FY2018 | 8 | US$ 2.057.902 | US$ 15.413.595 |
FY2018 | 9 | US$ 2.523.948 | US$ 17.937.543 |
FY2018 | 10 | US$ 561.681 | US$ 18.499.224 |
FY2018 | 11 | US$ 4.764.920 | US$ 23.264.145 |
FY2018 | 12 | US$ 596.747 | US$ 23.860.891 |
FY2019 | 1 | US$ 1.847.692 | US$ 1.847.692 |
FY2019 | 2 | US$ 2.829.362 | US$ 4.677.054 |
FY2019 | 3 | US$ 2.092.434 | US$ 6.769.488 |
FY2019 | 4 | US$ 2.405.971 | US$ 9.175.459 |
FY2019 | 5 | US$ 3.459.444 | US$ 12.634.903 |
FY2019 | 6 | US$ 2.850.649 | US$ 15.485.552 |
FY2019 | 7 | US$ 2.939.691 | US$ 18.425.243 |
FY2019 | 8 | US$ 3.964.801 | US$ 22.390.045 |
FY2019 | 9 | US$ 3.287.606 | US$ 25.677.650 |
FY2019 | 10 | US$ 2.157.287 | US$ 27.834.938 |
FY2019 | 11 | US$ 3.611.092 | US$ 31.446.030 |
FY2019 | 12 | US$ 2.624.078 | US$ 34.070.109 |
FY2020 | 1 | US$ 3.235.187 | US$ 3.235.187 |
FY2020 | 2 | US$ 4.070.046 | US$ 7.305.233 |
FY2020 | 3 | US$ 4.429.833 | US$ 11.735.066 |
FY2020 | 4 | US$ 4.002.614 | US$ 15.737.680 |
FY2020 | 5 | US$ 5.265.797 | US$ 21.003.477 |
FY2020 | 6 | US$ 3.465.241 | US$ 24.468.717 |
FY2020 | 7 | US$ 3.513.064 | US$ 27.981.781 |
FY2020 | 8 | US$ 5.247.165 | US$ 33.228.947 |
FY2020 | 9 | US$ 5.104.088 | US$ 38.333.035 |
FY2020 | 10 | US$ 3.542.150 | US$ 41.875.184 |
FY2020 | 11 | US$ 5.151.897 | US$ 47.027.081 |
FY2020 | 12 | US$ 4.851.194 | US$ 51.878.275 |
A seguinte consulta DAX de cálculo visual:
TotalSalesRunningSumByYear = SUMX(WINDOW(0, ABS, 0, REL, ROWS, HIGHESTPARENT), [SalesAmount])
Retorna o total acumulado de vendas por mês, calculado ao longo de cada ano. Os valores 1 e -2 poderiam ser usados em vez de HIGHESTPARENT, com os mesmos resultados.
A captura de tela abaixo mostra a matriz visual e a expressão de cálculo visual:
A seguinte consulta DAX de cálculo visual:
TotalSalesRunningSumByQuarter = SUMX(WINDOW(0, ABS, 0, REL, , -1), [SalesAmount])
Retorna o total acumulado de vendas por mês, calculado ao longo de cada trimestre.
INDEX
MOVINGAVERAGE
DESLOCAMENTO
ORDERBY
PARTITIONBY
RANGE
RANK
ROWNUMBERRUNNINGSUM
Eventos
Junte-se a nós na FabCon Vegas
31 de mar., 23 - 2 de abr., 23
O melhor evento liderado pela comunidade Microsoft Fabric, Power BI, SQL e AI. 31 de março a 2 de abril de 2025.
Registre-se hoje mesmo