PREPNÚŤ
Vzťahuje sa na:Vypočítaný stĺpecVypočítaná tabuľkaVýpočet vizuálu mierky
Vyhodnotí výraz voči zoznamu hodnôt a vráti jeden z viacerých možných výsledných výrazov. Túto funkciu možno použiť na to, aby ste nemuseli používať viaceré vnorené príkazy IF .
Syntax
SWITCH(<expression>, <value>, <result>[, <value>, <result>]…[, <else>])
Parametre
Obdobie | Definícia |
---|---|
Výraz | Akýkoľvek výraz jazyka DAX, ktorý vracia jednu skalárnu hodnotu, pričom výraz sa má vyhodnotiť viackrát (pre každý riadok alebo kontext). |
hodnota | Konštantná hodnota, ktorá sa má zhodovať s výsledkami výrazu. |
výsledok | Každý skalárny výraz, ktorý sa má vyhodnotiť, ak sa výsledky výrazu zhodujú so zodpovedajúcou hodnotou. |
else | Každý skalárny výraz, ktorý sa má vyhodnotiť, ak sa výsledok výrazu nezhoduje so žiadnym argumentom hodnoty. |
Vrátená hodnota
Ak dôjde k zhode s hodnotou, vráti sa skalárna hodnota zo príslušného výsledku. Ak sa zhoda s hodnotou nezhoduje, vráti sa hodnota z inej. Ak sa žiadna z hodnôt nezhoduje a iné nie je zadané, vráti sa hodnota BLANK.
Poznámky
- Výraz, ktorý sa má vyhodnotiť, môže byť konštantnou hodnotou alebo výrazom. Bežným použitím tejto funkcie je nastavenie prvého parametra na hodnotu TRUE. Pozrite si príklady nižšie.
- Všetky výsledné výrazy a výraz else musia mať rovnaký typ údajov.
- Na poradí podmienok záleží. Akonáhle sa jedna hodnota zhoduje, vráti sa zodpovedajúci výsledok a ďalšie nasledujúce hodnoty sa nevyhodnocujú. Uistite sa, že najprísnejšie hodnoty , ktoré sa majú vyhodnotiť, sú zadané pred menej reštriktívnym hodnotami. Pozrite si príklady nižšie.
Príklady
Bežným použitím funkcie SWITCH je porovnanie výrazu s konštantnými hodnotami. V nasledujúcom príklade sa vytvorí vypočítaný stĺpec s názvami mesiacov:
= 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"
)
Ďalším bežným použitím funkcie SWITCH je nahradenie viacerých vnorených príkazov IF. Dosahuje sa to nastavením výrazu na hodnotu TRUE, ako je to znázornené v nasledujúcom príklade, ktorý porovná hodnoty Zmena poradia bodu a Trezor úroveň zásob produktov s cieľom identifikovať potenciálne riziká vyskladnenia zásob:
= 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"
)
Na poradí hodnôt záleží. V nasledujúcom príklade sa druhý výsledok nikdy nevráti, pretože prvá hodnota je menej reštriktívna ako druhá hodnota. Výsledkom v tomto príklade je vždy "A" alebo "C", ale nikdy "B".
= SWITCH (
TRUE,
Product[Standard Cost] < 100, "A",
Product[Standard Cost] < 10, "B",
"C"
)
Nasledujúci príkaz vráti chybu, pretože typy údajov vo výsledných argumentoch sa líšia. Nezabudnite, že typy údajov vo všetkých výsledných a iných argumentoch musia byť rovnaké.
= SWITCH (
[Class],
"L", "Large",
"H", 0.1
)
Pripomienky
https://aka.ms/ContentUserFeedback.
Pripravujeme: V priebehu roka 2024 postupne zrušíme službu Problémy v službe GitHub ako mechanizmus pripomienok týkajúcich sa obsahu a nahradíme ju novým systémom pripomienok. Ďalšie informácie nájdete na stránke:Odoslať a zobraziť pripomienky pre