Lue englanniksi

Jaa


SWITCH

Koskee seuraavia:Laskettu sarakeLaskettu taulukkoMeasureVisuaalinen laskutoimitus

Laskee lausekkeen suhteessa valuesand palauttaa yhden useista mahdollisista tuloslausekkeista. Tämän funktion avulla voidaan välttää useiden sisäkkäisten IFstatements.

Syntaksi

SWITCH(<expression>, <value>, <result>[, <value>, <result>]…[, <else>])

Parametrit

Termi Määritelmä
expression Mikä tahansa DAX lauseke, joka palauttaa yksittäisen skalaariarvon value jossa lauseke arvioidaan useita kertoja (joka riville tai joka kontekstille).
value Vakion value, joka on täsmäytettävä expressiontulosten kanssa.
result Mikä tahansa arvioitava skalaarilauseke, ifexpression tulokset vastaavat vastaavaa value.
else Mikä tahansa arvioitava skalaarilauseke ifexpression tulos ei vastaa mitään value argumenteista.

Palauta value

If vastaavuus valuekanssa palauttaa skalaariarvon value vastaavasta result. If vastaavuutta valuekanssa ei ole, palautetaan elsevalue. If none values vastaavuutta andelse ei ole määritetty, palautetaan BLANK.

Huomautukset

  • Arvioitavat expression voivat olla vakiolausekkeita valueor. Tämän funktion yleinen käyttötarkoitus on määrittää first-parametrin arvoksi TRUE. Katso esimerkkejä alla.
  • else-lausekkeen andAllresult lausekkeiden on oltava samaa tietotyyppiä.
  • Ehtojen järjestyksellä on väliä. Heti, kun yksi value vastaa, vastaava result palautetaan, and muita myöhempiä values ei arvioida. Varmista, että rajoittavin arvioitava values määritetään ennen kuin valuesvähemmän rajoittava. Katso esimerkkejä alla.

Esimerkit

SWITCH avulla yleensä verrataan expression vakioon values. Seuraava esimerkki luo lasketun sarakkeen month nimistä:

= SWITCH (
         [Month Number Of Year],
         1, "January",
         2, "February",
         3, "March",
         4, "April",
         5, "May",
         6, "June",
         7, "July",
         8, "August",
         9, "September",
         10, "October",
         11, "November",
         12, "December",
         "Unknown month number"
        )

Toinen SWITCH yleinen käyttötarkoitus on useiden sisäkkäisten IFstatementsreplace. Tämä toteutetaan määrittämällä lauseke TRUEseuraavan esimerkin mukaisesti. Siinä verrataan uudelleenjärjestelypisteen and tuotteiden turvallisuusvarastotasoa mahdollisten varastojen loppumiseen liittyvien riskien tunnistamiseen:

= SWITCH (
        TRUE,
        [Reorder Point] > [Safety Stock Level], "Good: Safety stock level exceeded",
        [Reorder Point] = [Safety Stock Level], "Minimal: Safety stock level met",
        [Reorder Point] < [Safety Stock Level], "At risk: Safety stock level not met",
        ISBLANK ( [Reorder Point] ), "Incomplete: Reorder point not set",
        ISBLANK ( [Safety Stock Level] ), "Incomplete: Safety stock level not set",
        "Unknown"
        )

values järjestys on tärkeä. Seuraavassa esimerkissä secondresult ei koskaan palauteta, koska firstvalue on vähemmän rajoittava kuin second. Tässä esimerkissä tulos on aina AorC, mutta ei koskaan B.

= SWITCH (
         TRUE,
         Product[Standard Cost] < 100, "A",
         Product[Standard Cost] < 10, "B",
         "C"
         )

Seuraava lauseke palauttaa error, koska result-argumenttien tietotyypit ovat erilaiset. Muista, että allresultandelse argumenttien tietotyyppien on oltava samat.

= SWITCH (
        [Class],
        "L", "Large",
        "H", 0.1
        )