Snabb genomgång av formelspråket Power Query M

Den här guidade visningen beskriver hur du skapar frågor i formelspråket Power Query M.

Anteckning

M är ett skiftlägeskänsligt språk.

Skapa en fråga med Frågeredigeraren

Om du vill skapa en avancerad fråga använder du Frågeredigeraren. En kombinationsfråga består av variabler, uttryck och värden som kapslas in av ett let-uttryck. En variabel kan innehålla blanksteg med hjälp av #-identifieraren med namnet inom citattecken, som i #"Variable name".

Ett let-uttryck följer den här strukturen:

let  
   Variablename = expression,  
   #"Variable name" = expression2  
in   
   Variablename  

Om du vill skapa en M-fråga i Frågeredigeraren följer du den här grundläggande processen:

  • Skapa en serie med frågeformelsteg som börjar med let-instruktionen. Varje steg definieras av ett stegvariabelnamn. En M-variabel kan innehålla blanksteg med hjälp av #-tecknet som #"Step Name". Ett formelsteg kan vara en anpassad formel. Observera att det Power Query-formelspråket är skiftlägeskänsligt.

  • Varje frågeformelsteg bygger på ett föregående steg genom att referera till ett steg baserat på dess variabelnamn.

  • Mata ut ett frågeformelsteg med hjälp av in-instruktionen. Det sista steget i frågan används vanligtvis som resultatet av den slutliga in-datamängden.

Om du vill veta mer om uttryck och värden kan du läsa Uttryck, värden och let-uttryck.

Enkla formelsteg för Power Query M

Anta att du har skapat följande transformering i Frågeredigeraren för att konvertera produktnamn till lämpligt skiftläge.

Introduktion till M steg 1 Introduktion

Du har en tabell som ser ut så här:

OrderID CustomerID Objekt Pris
1 1 fiskespö 100
2 1 1 lb. maskar 5
3 2 fisknät 25

Och du vill versalisera varje ord i kolumnen Item för att skapa följande tabell:

OrderID CustomerID Objekt Pris
1 1 Fiskespö 100
2 1 1 lb. Maskar 5
3 2 Fisknät 25

M-formelstegen för att projicera den ursprungliga tabellen till resultattabellen ser ut så här:

Avancerad redigerare

Här är den kod som du kan klistra in i Frågeredigeraren:

let Orders = Table.FromRecords({  
    [OrderID = 1, CustomerID = 1, Item = "fishing rod", Price = 100.0],  
    [OrderID = 2, CustomerID = 1, Item = "1 lb. worms", Price = 5.0],  
    [OrderID = 3, CustomerID = 2, Item = "fishing net", Price = 25.0]}),  
    #"Capitalized Each Word" = Table.TransformColumns(Orders, {"Item", Text.Proper})  
in  
    #"Capitalized Each Word"  

Vi går igenom varje formelsteg.

  1. Orders – Skapa en [Table](#_Table_value) med data för Beställningar.

  2. ## – För att versalisera varje ord använder du Table.TransformColumns().

  3. in #"Capitalized Each Word" – Mata ut tabellen med varje ord versaliserat.

Se även

Uttryck, värden och let-uttryck
Operatorer
Typkonvertering