Home
» Power BI
»
Korvaa vastaavan tekstin arvo Power Queryssa
Korvaa vastaavan tekstin arvo Power Queryssa
Jos olet joskus joutunut suorittamaan useita tarkan tekstivastaavuuden korvauksia, olet todennäköisesti suorittanut sarjan korvausarvovaiheita. Mutta kuten aina, on useita ja helpompia tapoja saavuttaa sama tulos. Voit katsoa tämän opetusohjelman koko videon tämän blogin alaosasta.
Tämän päivän blogissa esittelen M-funktiota Record.FieldOrDefault tässä käyttötapauksessa.
Vaiheet useiden täsmällisten tekstien arvon korvaamiseksi
Tietojoukossa liikkuminen
Aloitetaan avaamalla , jotta pääset näytetieto- ja vaihtotietueeseen .
Taulukon sisällä näemme, että kaikkia tekstijonoja ei ole tasattu vasemmalle.
Kun siirrymme Korvauksiin , voimme tutkia tietueemme ja ymmärtää, miksi tämä menetelmä voi toimia vain tarkkojen tekstiosumien korvaamisessa.
Tietue on joukko kenttiä ja jokaisella kentällä on nimi-arvo-pari.
Kentän nimen on oltava yksilöllinen teksti tietueessa, jossa on Record.FieldOrDefault.
Kentän nimeä käytetään tunnistamaan etsimämme asia, kun taas korvaamiseen käytettävä kentän arvo voi olla mitä tahansa tyyppiä.
Arvojen korvaaminen
Katsotaan kuinka se toimii.
Ensin siirryn Ratkaisu- kyselyyn ja valitsen Muunna- välilehdessä Korvaa arvot.
Näkyviin tulee ponnahdusikkuna, ja painan OK .
Tämä luo suurimman osan lomakkeesta. Joten minun tarvitsee vain päivittää kaavapalkin syntaksi.
Kaavasta voimme nähdä, että se kutsuu lähdetaulukkoamme ensimmäiseksi argumentiksi ja etsimäämme asiaa toiseksi argumentiksi. Argumentit on merkitty näillä lainausmerkeillä (" ").
Etsin arvoa sarakkeen yksi sisällä, joten kirjoitan jokaisen [Col1] ensimmäiselle argumentille. Seuraavaksi se haluaa asian korvaavan botin, ja tässä aion käyttää sitä tallennustoimintoa.
Kirjoitan jokaisen Record.FieldOrDefault. Sitten se haluaa levyn tai Korvauksen ja lopuksi sen, mitä etsimme. Löydän sen yhden sarakkeen sisältä, joten kopioin ja liitän [Col1] ensimmäisestä argumentista takaisin viittaamiseen.
Jos arvoa ei löydy tietueesta, haluan sen palauttavan sen, mikä siellä on tällä hetkellä. Siten liitän [Col1] uudelleen viitaten sarakkeeseen yksi, jos arvo puuttuu. Jos jätän pois tämän lopullisen parametrin ja kohdetta ei löydy tietueesta, sen sijaan palautetaan nolla.
Nämä muutokset saavat kaavamme näyttämään tältä.
Vahvistataan napsauttamalla kaavapalkin vasemmalla puolella olevaa tarkistuskuvaketta .
Tulos näkyy alla olevassa kuvassa.
Jokainen ensimmäisen sarakkeen tekstiarvo, jolla oli vastaava kentän nimi korvaavassa tietueessa, on nyt päivitetty.
Johtopäätös
Tässä blogissa esitin, kuinka tehdä useita tarkan haun tekstinkorvauksia . Käyttämällä M-toimintoa Record.FieldOrDefault voit säästää aikaa vähentämällä samojen tulosten saavuttamiseen tarvittavia vaiheita.