Begivenhed
31. mar., 23 - 2. apr., 23
Den ultimative Microsoft Fabric-, Power BI-, SQL- og AI-communityledede begivenhed. 31. marts til 2. april 2025.
Tilmeld dig i dagDenne browser understøttes ikke længere.
Opgrader til Microsoft Edge for at drage fordel af de nyeste funktioner, sikkerhedsopdateringer og teknisk support.
gælder for:beregnet kolonneberegnet tabelberegning af målingvisualisering
Returnerer en enkelt række, der er placeret enten før eller efter den aktuelle række i den samme tabel med en given forskydning. Hvis den aktuelle række ikke kan udledes til en enkelt række, returneres der muligvis flere rækker.
OFFSET ( <delta>[, <relation> or <axis>][, <orderBy>][, <blanks>][, <partitionBy>][, <matchBy>][, <reset>] )
Udtryk | Definition |
---|---|
delta |
Antallet af rækker før (negativ værdi) eller efter (positiv værdi) den aktuelle række, hvorfra dataene skal hentes. Det kan være et hvilket som helst DAX-udtryk, der returnerer en skalarværdi. |
relation |
(Valgfrit) Et tabeludtryk, som outputrækken returneres fra.
Hvis det er angivet, skal alle kolonner i partitionBy komme fra den eller en relateret tabel.
Hvis udeladt: - orderBy skal angives eksplicit.– Alle udtryk for orderBy og partitionBy skal være fuldt kvalificerede kolonnenavne og komme fra en enkelt tabel.
– standarden ALLSELECTED() for alle kolonner i orderBy og partitionBy . |
axis |
(Valgfrit) En akse i visualiseringsfiguren. Kun tilgængelig i visuelle beregninger og erstatter relation . |
orderBy |
(Valgfrit) En ORDERBY()-delsætning, der indeholder de udtryk, der definerer, hvordan hver partition sorteres.
Hvis udeladt: - relation skal angives eksplicit.
– Som standard sorteres efter hver kolonne i relation , der ikke allerede er angivet i partitionBy . |
blanks |
(Valgfrit) En optælling, der definerer, hvordan tomme værdier skal håndteres ved sortering.
Denne parameter er reserveret til fremtidig brug. I øjeblikket er den eneste understøttede værdi DEFAULT, hvor funktionsmåden for numeriske værdier er tomme værdier sorteres mellem nul og negative værdier. Funktionsmåden for strenge er tomme værdier sorteres før alle strenge, herunder tomme strenge. |
partitionBy |
(Valgfrit) En PARTITIONBY()-delsætning, der indeholder de kolonner, der definerer, hvordan relation partitioneres.
Hvis den udelades, behandles relation som en enkelt partition. |
matchBy |
(Valgfrit) En MATCHBY()-delsætning, der indeholder de kolonner, der definerer, hvordan dataene skal matche og identificere den aktuelle række. |
reset |
(Valgfrit) Kun tilgængelig i visuelle beregninger. Angiver, om beregningen nulstilles, og på hvilket niveau i den visuelle figurs kolonnehierarki. Accepterede værdier er: NONE, LOWESTPARENT, HIGHESTPARENT eller et heltal. Funktionsmåden afhænger af heltalstegnet: – Hvis nul eller udeladt, nulstilles beregningen ikke. Svarer til NONE. – Hvis den er positiv, identificerer heltalet kolonnen, der starter fra den højeste, uafhængig af detaljering. HIGHESTPARENT svarer til 1. – Hvis det er negativt, identificerer heltalet kolonnen med start fra det laveste i forhold til den aktuelle detaljering. LOWESTPARENT svarer til -1. |
En eller flere rækker fra relation
.
Med undtagelse af kolonner, der tilføjes af DAX-tabelfunktioner, skal hver kolonne i relation
, når matchBy
ikke findes, eller hver kolonne i matchBy
og partitionBy
, når matchBy
er til stede, have en tilsvarende ydre værdi for at hjælpe med at definere den aktuelle række, der skal arbejdes på, med følgende funktionsmåde:
Hvis alle relation
's kolonner blev tilføjet af DAX-tabelfunktioner, returneres der en fejl.
Hvis matchBy
findes, forsøger OFFSET at bruge matchBy
og partitionBy
kolonner til at identificere rækken.
Hvis matchBy
ikke findes, og de kolonner, der er angivet i orderBy
og partitionBy
, ikke entydigt kan identificere hver række i relation
, kan:
orderBy
, og hver partition sorteres ved hjælp af dette nye sæt OrderBy-kolonner.Der returneres en tom tabel, hvis:
relation
.delta
medfører et skift til en række, der ikke findes i partitionen.Hvis OFFSET bruges i en beregnet kolonne, der er defineret i den samme tabel som relation
, og orderBy
udelades, returneres der en fejl.
reset
kan kun bruges i visuelle beregninger og kan ikke bruges sammen med orderBy
eller partitionBy
. Hvis reset
findes, kan axis
angives, men relation
kan ikke.
Følgende DAX-forespørgsel:
DEFINE
VAR vRelation = SUMMARIZECOLUMNS (
DimProductCategory[EnglishProductCategoryName],
DimDate[CalendarYear],
"CurrentYearSales", SUM(FactInternetSales[SalesAmount])
)
EVALUATE
ADDCOLUMNS (
vRelation,
"PreviousYearSales",
SELECTCOLUMNS(
OFFSET (
-1,
vRelation,
ORDERBY([CalendarYear]),
PARTITIONBY([EnglishProductCategoryName])
),
[CurrentYearSales]
)
)
Returnerer en tabel, der opsummerer det samlede salg for hver produktkategori og hvert kalenderår samt det samlede salg for den pågældende kategori i det forrige år.
Følgende DAX-forespørgsel:
DEFINE
MEASURE DimProduct[CurrentYearSales] = SUM(FactInternetSales[SalesAmount])
MEASURE DimProduct[PreviousYearSales] = CALCULATE(SUM(FactInternetSales[SalesAmount]), OFFSET(-1, , ORDERBY(DimDate[CalendarYear])))
EVALUATE
SUMMARIZECOLUMNS (
DimDate[CalendarYear],
"CurrentYearSales", DimProduct[CurrentYearSales],
"PreviousYearSales", DimProduct[PreviousYearSales]
)
Bruger OFFSET() i en måling til at returnere en tabel, der opsummerer det samlede salg for hvert kalenderår og det samlede salg for det foregående år.
Følgende DAX-forespørgsel:
EVALUATE
ADDCOLUMNS (
FactInternetSales,
"Previous Sales Amount",
SELECTCOLUMNS (
OFFSET (
-1,
FactInternetSales,
ORDERBY ( FactInternetSales[SalesAmount], DESC ),
PARTITIONBY ( FactInternetSales[ProductKey] ),
MATCHBY( FactInternetSales[SalesOrderNumber], FactInternetSales[SalesOrderLineNumber] )
),
FactInternetSales[SalesAmount]
)
)
Returnerer tabellen FactInternetSales med tilføjelse af en kolonne, som angiver det forrige salgsbeløb for det samme produkt for hvert salg i faldende rækkefølge efter salgsbeløb, hvor det aktuelle salg identificeres af dets SalesOrderNumber og SalesOrderLineNumber. Uden MATCHBY returnerer forespørgslen en fejl, da der ikke er nogen nøglekolonner i tabellen FactInternetSales.
Følgende DAX-forespørgsel til visuel beregning:
SalesRelativeToPreviousMonth = [SalesAmount] - CALCULATE(SUM([SalesAmount]), OFFSET(-1, ROWS, HIGHESTPARENT))
Returnerer forskellen i det samlede salg mellem hver måned og den forrige inden for samme år.
Skærmbilledet nedenfor viser den visuelle matrix og det visuelle beregningsudtryk:
INDEKS
ORDERBY-
PARTITIONBY
MATCHBY-
VINDUE
RANK-
RÆKKENUMMER
Begivenhed
31. mar., 23 - 2. apr., 23
Den ultimative Microsoft Fabric-, Power BI-, SQL- og AI-communityledede begivenhed. 31. marts til 2. april 2025.
Tilmeld dig i dag