Expresii imbricate: Medii Power Query

În acest tutorial, veți afla despre expresii imbricate, obiecte și medii în Power Query . Expresiile și variabilele imbricate vor fi folosite pentru a discuta cum funcționează mediile și pentru a ajuta la generarea datelor. Veți învăța, de asemenea, să faceți față unor scenarii comune atunci când transformați obiecte imbricate.

Cuprins

Crearea expresiilor imbricate

Expresiile sunt definite ca o formulă utilizată pentru a construi valoarea.

Expresii imbricate: Medii Power Query

Expresia din bara de formule este construită din sub-expresii. Literale 1 și 2 sunt sub-expresii ale expresiei părinte.

Variabilele sunt definite ca valori numite. Acesta este un exemplu de înregistrare.

Expresii imbricate: Medii Power Query

Dacă deschideți fereastra Editor avansat, puteți vedea variabilele utilizate în interogare.

Expresii imbricate: Medii Power Query

Variabilele a , b și c reprezintă fiecare o valoare care este rezultatul unei expresii pe care o veți găsi adesea după un semn egal. Toate variabilele din expresia părinte, care este înregistrarea în sine, formează mediul acelei înregistrări. În acel mediu, fiecare variabilă trebuie să fie unică.

Deci, dacă adăugați o altă variabilă numită c , veți vedea un mesaj de eroare sub fereastra Editor avansat.

Expresii imbricate: Medii Power Query

Expresii imbricate: Medii Power Query

Înregistrarea poate accesa toate sub-expresiile sale folosind identificatori sau nume de variabile. Cu toate acestea, pentru expresiile imbricate din înregistrare, fiecare mediu este diferit, deoarece pot accesa toate celelalte variabile din înregistrare, cu excepția lor.

În acest exemplu, puteți vedea că variabila c se referă la ea însăși.

Expresii imbricate: Medii Power Query

Dacă apăsați pe Terminat, veți primi un mesaj de eroare.

Expresii imbricate: Medii Power Query

Dacă extrageți valoarea lui c prin adăugarea operatorului de acces la element, veți obține un rezultat. De asemenea, puteți obține același rezultat cu expresia let , deoarece îi sunt aplicate aceleași reguli.

Expresii imbricate: Medii Power Query

Înțelegerea expresiilor imbricate într-un mediu

Acesta este un alt exemplu de valoare record.

Expresii imbricate: Medii Power Query

Dacă deschideți fereastra Editor avansat, puteți vedea că variabilele a și b împărtășesc același mediu care este mediul exterior. Veți vedea, de asemenea, că variabilele x , y și z , sunt sub-expresii ale expresiei părinte a .

Expresii imbricate: Medii Power Query

Fiecare variabilă poate accesa toate celelalte variabile din înregistrarea imbricată, cu excepția lor. Puteți apela o variabilă care există într-un mediu diferit. În acest exemplu, puteți vedea că z face referire la b care se află în mediul exterior.

Expresii imbricate: Medii Power Query

Variabilele x , y și z pot accesa b deoarece b face parte din mediul lor de expresie părinte. De asemenea, puteți avea aceeași variabilă, dar în medii diferite.

În acest alt exemplu, puteți vedea că înregistrarea interioară și exterioară are o variabilă x .

Expresii imbricate: Medii Power Query

Variabilele trebuie să fie unice în propriul lor mediu. Va fi folosit cel mai apropiat x alocat unei variabile. În acest exemplu de interogare, x interior este utilizat deoarece este mai aproape din perspectiva înregistrării a .

Expresii imbricate: Medii Power Query

În această altă interogare, cel mai apropiat x care este aproape de variabila b este folosit în expresie.

Expresii imbricate: Medii Power Query

Variabila exterioară b se poate referi la variabila x din interiorul înregistrării a folosind operatorul de acces la articol. Trebuie să vă referiți la variabila a și apoi să accesați x folosind un set de paranteze drepte. În același mod, înregistrarea a se poate referi la variabila x din interiorul variabilei b .

Expresii imbricate: Medii Power Query

Când mediul înregistrării imbricate a este îmbinat cu variabilele din expresia părinte, duce la un conflict deoarece x există de două ori și toate variabilele trebuie să fie unice în mediul lor. Deoarece o variabilă nu se poate referi la ea însăși, conflictul este rezolvat prin referire la x exterior.

Expresii imbricate: Medii Power Query

Rezolvarea scenariilor comune

Un scenariu comun este transformarea obiectelor imbricate. Pentru a demonstra, va fi folosit acest tabel.

Expresii imbricate: Medii Power Query

Dacă doriți să preluați o valoare din tabelul exterior și să o plasați în tabelul imbricat, există două moduri de a o obține. Prima metodă este să utilizați opțiunea Adăugați o coloană personalizată .

Faceți clic pe pictograma tabel din colțul din stânga sus al panoului de previzualizare și selectați Adăugați o coloană personalizată.

Expresii imbricate: Medii Power Query

Introduceți Temp ca nume de coloană și introduceți un substituent în formula personalizată a coloanei . Odată terminat, apăsați OK.

Expresii imbricate: Medii Power Query

În interiorul barei de formule, înlocuiți fiecare expresie cu o funcție personalizată prin adăugarea unei coloane la tabelul imbricat. Porniți logica pentru o funcție personalizată și numiți-o OT pentru tabelul exterior. Apoi, adăugați semnul de acces.

Apoi, utilizați funcția Table.AddColumn pentru a adăuga o coloană. Consultați tabelul din tabelul exterior găsit în coloana Nume. Și apoi introduceți un nou nume de coloană.

Pentru acest exemplu, numele coloanei folosit este Venituri . Introduceți fiecare funcție pentru a obține valorile fiecărui rând din coloana Obține venituri.

Expresii imbricate: Medii Power Query

Dacă faceți clic pe spațiul din interiorul celulei unui rând din coloana Temp, veți obține o previzualizare a tabelului imbricat sub panoul de previzualizare. Veți vedea că fiecare rând are valoarea tabelului exterior.

Expresii imbricate: Medii Power Query

Utilizarea variabilelor pentru a stoca valori

A doua metodă de transformare a obiectelor imbricate este utilizarea variabilelor pentru a stoca valori. Mai întâi, adăugați o coloană personalizată și introduceți Temp2 ca nume de coloană. Pentru formulă, utilizați expresia let pentru a stoca valori în variabile.

Introduceți let și apoi scrieți un nume de variabilă. Pentru acest exemplu, numele variabilei este myR . Apoi, echivalează variabila cu coloana Obține venituri. După aceea, introduceți clauza in și utilizați funcția Table.AddColumn pentru a adăuga o coloană la tabelul imbricat.

Pentru primul parametru al funcției, introduceți coloana Nume care conține tabelele imbricate. Apoi, denumește noua coloană Venit. Folosiți fiecare pentru a apela variabilele fiecărui rând.

Expresii imbricate: Medii Power Query

Dacă faceți clic pe spațiul din interiorul celulei unui rând din coloana Temp2, veți vedea că a preluat valorile din tabelul exterior.

Expresii imbricate: Medii Power Query

Un alt scenariu comun este o căutare în care nu există o cheie partajată. Pentru acest scenariu, vor fi utilizate 2 tabele eșantion: un tabel de categorii și un tabel de produse .

Expresii imbricate: Medii Power Query

Expresii imbricate: Medii Power Query

Utilizați tabelul de categorii ca o interogare intermediară pentru a completa atributele tabelului cu dimensiunile produsului. Deoarece nu există o cheie partajată, o îmbinare nu poate fi efectuată. Primul lucru pe care trebuie să-l faceți este să așezați întregul tabel de categorii în interogarea tabelului de produse folosind coloana Adăugați o coloană personalizată.

Adăugați o coloană personalizată și scrieți Categoria ca nume de coloană. Apoi, în formula personalizată, apelați interogarea categoriei.

Expresii imbricate: Medii Power Query

După aceea, acum ați imbricat întregul tabel de categorii în fiecare rând al tabelului de produse.

Expresii imbricate: Medii Power Query

Când faceți clic pe spațiul din interiorul celulei unui rând din coloana Categorie, puteți vedea tabelul complet de categorii în fiecare rând.

Expresii imbricate: Medii Power Query

Preluarea unei singure valori

Dacă doriți doar să preluați o singură valoare, trebuie să filtrați tabelul de categorii până la un singur rând în care o parte a șirului din produs are o potrivire cu grupul de produse din tabelul de categorii.

Deschideți caseta de dialog Coloana personalizată apăsând butonul roată de lângă Personalizarea adăugată în panoul Pași aplicați.

Expresii imbricate: Medii Power Query

În formulă, adăugați funcția Table.SelectRows . Pentru primul parametru se folosește tabelul Category. Al doilea parametru a folosit funcția Text.Contains ca o condiție. Pentru tabelul interior, această funcție verifică dacă un text conține o parte din șirul de produse din tabelul exterior.

Expresii imbricate: Medii Power Query

La accesarea tabelului exterior, veți observa că Power Query adaugă fiecare cuvânt cheie în bara de formule. Este o funcție unară care ia liniuța de subliniere ( _ ) ca o variabilă fără nume. Cu toate acestea, deoarece accesați doar o coloană, aceasta poate fi omisă.

Expresii imbricate: Medii Power Query

Dacă faceți clic pe spațiul din interiorul celulei unui rând din coloana Categorie, acum veți vedea un singur rând în fiecare dintre tabelele imbricate.

Expresii imbricate: Medii Power Query

De acolo, puteți extrage o valoare pentru categorie cu combinația operatorilor de acces rând și câmp.

Reveniți la caseta de dialog Coloana personalizată și adăugați operatorii în formulă. Pentru a obține primul rând al tabelului, introduceți 0 într-un set de paranteze. Apoi, enumerați numele câmpului Categorie într-un set de paranteze pătrate.

Expresii imbricate: Medii Power Query

Pentru a asigura soluția în viitor, puteți adăuga un semn de întrebare ( ? ) la final pentru a schimba comportamentul negăsit de la returnarea unei erori într-un nul.


Cum funcționează Editorul de interogări în LuckyTemplates
M Language și Power Query Editor în LuckyTemplates

Concluzie

Mediile și expresiile imbricate ajută interogarea dvs. să scoată anumite valori din codurile dvs. pentru a oferi rezultate dorite. A fi conștient de ele este important atunci când scrieți funcții , deoarece atunci când le înțelegeți, veți putea rezolva scenarii mai avansate și mai complexe.

Melissa

Leave a Comment

Ce este Sinele în Python: Exemple din lumea reală

Ce este Sinele în Python: Exemple din lumea reală

Ce este Sinele în Python: Exemple din lumea reală

Cum să salvați și să încărcați un fișier RDS în R

Cum să salvați și să încărcați un fișier RDS în R

Veți învăța cum să salvați și să încărcați obiecte dintr-un fișier .rds în R. Acest blog va trata, de asemenea, cum să importați obiecte din R în LuckyTemplates.

Primele N zile lucrătoare revizuite – O soluție de limbaj de codare DAX

Primele N zile lucrătoare revizuite – O soluție de limbaj de codare DAX

În acest tutorial despre limbajul de codare DAX, aflați cum să utilizați funcția GENERATE și cum să schimbați în mod dinamic titlul unei măsuri.

Prezentați perspective utilizând tehnica vizuală dinamică cu mai multe fire în LuckyTemplates

Prezentați perspective utilizând tehnica vizuală dinamică cu mai multe fire în LuckyTemplates

Acest tutorial va acoperi cum să utilizați tehnica Multi Threaded Dynamic Visuals pentru a crea informații din vizualizările dinamice de date din rapoartele dvs.

Introducere la filtrarea contextului în LuckyTemplates

Introducere la filtrarea contextului în LuckyTemplates

În acest articol, voi trece prin contextul filtrului. Contextul de filtrare este unul dintre subiectele majore despre care orice utilizator LuckyTemplates ar trebui să învețe inițial.

Cele mai bune sfaturi pentru utilizarea aplicațiilor din serviciul online LuckyTemplates

Cele mai bune sfaturi pentru utilizarea aplicațiilor din serviciul online LuckyTemplates

Vreau să arăt cum serviciul online LuckyTemplates Apps poate ajuta la gestionarea diferitelor rapoarte și informații generate din diverse surse.

Analizați modificările marjei de profit ore suplimentare – Analytics cu LuckyTemplates și DAX

Analizați modificările marjei de profit ore suplimentare – Analytics cu LuckyTemplates și DAX

Aflați cum să vă calculați modificările marjei de profit folosind tehnici precum măsurarea ramificării și combinarea formulelor DAX în LuckyTemplates.

Idei de materializare pentru cache-urile de date în DAX Studio

Idei de materializare pentru cache-urile de date în DAX Studio

Acest tutorial va discuta despre ideile de materializare a cache-urilor de date și despre modul în care acestea afectează performanța DAX-ului în furnizarea de rezultate.

Raportare de afaceri folosind LuckyTemplates

Raportare de afaceri folosind LuckyTemplates

Dacă încă utilizați Excel până acum, atunci acesta este cel mai bun moment pentru a începe să utilizați LuckyTemplates pentru nevoile dvs. de raportare a afacerii.

Ce este LuckyTemplates Gateway? Tot ce trebuie să știți

Ce este LuckyTemplates Gateway? Tot ce trebuie să știți

Ce este LuckyTemplates Gateway? Tot ce trebuie să știți