Zdieľať cez


HĽADAŤ

Vzťahuje sa na: Vypočítaný stĺpec Vypočítaná tabuľka Výpočet mierky Vizuál

Vráti číslo znaku, v ktorom sa po prvýkrát nájde konkrétny znak alebo textový reťazec, pri čítaní zľava doprava. Vo vyhľadávaní sa rozlišujú veľké a malé písmená a diakritika.

Syntax

SEARCH(<find_text>, <within_text>[, [<start_num>][, <NotFoundValue>]])  

Parametre

Obdobie Definícia
find_text Text, ktorý sa má vyhľadať.

V find_text môžete použiť zástupné znaky – otáznik (?) a hviezdičku (*). Otáznik sa zhoduje s ľubovoľným jedným znakom. Hviezdička sa zhoduje s ľubovoľnou sekvenciou znakov. Ak chcete vyhľadať skutočný otáznik alebo hviezdičku, pred znak zadajte vlnovku (~).
within_text Text, v ktorom chcete vyhľadať find_text, alebo stĺpec obsahujúci text.
start_num (voliteľné) Pozícia znaku v within_text , na ktorej sa má začať hľadať. Ak sa vynechá, použije sa hodnota 1.
NotFoundValue (voliteľné, ale dôrazne sa odporúča) Hodnota, ktorá sa má vrátiť, keď operácia nenájde zodpovedajúci podreťazci, zvyčajne 0, -1 alebo BLANK(). Ak parameter nie je zadaný, vráti sa chyba.

Vrátená hodnota

Číslo počiatočnej pozície prvého textového reťazca od prvého znaku druhého textového reťazca.

Poznámky

  • Vo funkcii vyhľadávania sa nerozlišujú malé a veľké písmená. Pri vyhľadávaní výrazu "N" sa nájde prvý výskyt záznamu "N" alebo "n".

  • Vo funkcii vyhľadávania sa rozlišuje diakritika. Pri vyhľadávaní znaku "á" sa nájde prvý výskyt znaku "á", ale žiadne výskyty znaku "a", "à" alebo veľkých písmen "A", "Á".

  • Funkciu SEARCH môžete použiť na určenie umiestnenia znaku alebo textového reťazca v inom textovom reťazci a potom pomocou funkcie MID vrátiť text alebo použiť funkciu REPLACE na zmenu textu.

  • Ak find_text nie je možné nájsť v within_text, vzorec vráti chybu. Toto správanie je rovnaké ako v Exceli, ktorý vráti #VALUE ak sa podreťazca nenájde. Hodnoty Null v within_text sa v tomto kontexte interpretujú ako prázdny reťazec.

  • Táto funkcia nie je podporovaná na použitie v režime DirectQuery, keď sa používa vo vypočítaných stĺpcoch alebo v pravidlách zabezpečenia na úrovni riadkov (RLS).

Príklad

Nasledujúci dotaz DAX vyhľadá pozíciu prvého písmena "cyklu" v reťazci, ktorý obsahuje názov predajcu. Ak sa nenájde, vráti sa hodnota Prázdne.

Vo vyhľadávaní sa nerozlišujú malé a veľké písmená. V tomto príklade, ak sa v <argumente find_text> použije "cyklus" alebo "Cyklus", vrátia sa výsledky pre oba prípady. Funkciu FIND použite na rozlišovania malých a malých písmen.

Príklady v tomto článku možno použiť so vzorovým modelom aplikácie Power BI Desktop Adventure Works DW 2020. Ak chcete získať tento model, pozrite si tému Ukážkový model DAX.

EVALUATE
CALCULATETABLE (
    ADDCOLUMNS (
        TOPN ( 10, SUMMARIZE('Reseller', [Reseller], [Business Type])),
        "Position of cycle", SEARCH ( "cycle", 'Reseller'[Reseller], 1, BLANK () )
    ),
    'Reseller'[Business Type] IN { "Specialty Bike Shop", "Value Added Reseller", "Warehouse"}
)

Vráti

Reseller (Predajca) Business Type (Druh podnikania) Poloha cyklu
Volume Bike Sellers Warehouse
Hromadnom trhu bicykle Predajca s pridanou hodnotou
Dva cykly Predajca s pridanou hodnotou 6
Rich Department Store Warehouse
Galéria prenájmu Predajňa špeciálnych bicyklov
Budget Toy Store Warehouse
Globálna športová zásuvka Warehouse
Online katalóg bicyklov Warehouse
Prilby a cykly Predajca s pridanou hodnotou 13
Jumbo bicykle Predajňa špeciálnych bicyklov

NÁJSŤ
NAHRADIŤ
Textové funkcie