Översikt av fönsterfunktioner
Fönsterfunktioner fungerar på flera rader (poster) i en raduppsättning i taget. Till skillnad från aggregeringsfunktioner kräver fönsterfunktioner att raderna i raduppsättningen serialiseras (har en specifik ordning för dem). Fönsterfunktioner kan vara beroende av ordningen för att fastställa resultatet.
Fönsterfunktioner kan bara användas på serialiserade uppsättningar. Det enklaste sättet att serialisera en raduppsättning är att använda serialiseringsoperatorn. Den här operatorn "fryser" ordningen på rader på ett godtyckligt sätt. Om ordningen på serialiserade rader är semantiskt viktig använder du sorteringsoperatorn för att tvinga fram en viss ordning.
Serialiseringsprocessen har en icke-trivial kostnad associerad med den. Det kan till exempel förhindra frågeparallellitet i många scenarier. Använd därför inte serialisering i onödan. Om det behövs ordnar du om frågan för att utföra serialisering på minsta möjliga raduppsättning.
Serialiserad raduppsättning
En godtycklig raduppsättning (till exempel en tabell eller utdata från en tabelloperator) kan serialiseras på något av följande sätt:
- Genom att sortera raduppsättningen. Se nedan för en lista över operatorer som genererar sorterade raduppsättningar.
- Genom att använda serialiseringsoperatorn.
Många tabelloperatorer serialiserar utdata när indata redan serialiseras, även om operatorn inte själv garanterar att resultatet serialiseras. Den här egenskapen är till exempel garanterad för extend-operatorn, projektoperatorn och where-operatorn.
Operatorer som genererar serialiserade raduppsättningar genom sortering
Operatorer som bevarar egenskapen serialiserad raduppsättning
Feedback
https://aka.ms/ContentUserFeedback.
Kommer snart: Under hela 2024 kommer vi att fasa ut GitHub-problem som feedbackmekanism för innehåll och ersätta det med ett nytt feedbacksystem. Mer information finns i:Skicka och visa feedback för