Sdílet prostřednictvím


Funkce – dotazovací jazyk ve službě Cosmos DB (v Azure a prostředcích infrastruktury)

Dotazovací jazyk obsahuje řadu systémových funkcí, které jsou integrované v dotazovacím jazyce a navržené tak, aby zpracovávaly širokou škálu běžných úloh.

Functions

Tady je seznam funkcí, které dotazovací jazyk aktuálně podporuje:

Matematické funkce

Description
ABS Funkce ABS vypočítá absolutní (kladnou) hodnotu zadaného číselného výrazu.
ACOS Funkce ACOS vypočítá trigonometrický arkusinus zadané číselné hodnoty. Arkusinus je úhel v radiánech, jehož kosinus je zadaný číselný výraz.
ASIN Funkce ASIN vypočítá trigonometrický arkusinus zadané číselné hodnoty. Arkusinus je úhel v radiánech, jehož sinus je zadaný číselný výraz.
ATAN Funkce ATAN vypočítá trigonometrický arkustanens zadané číselné hodnoty. Arkusangens je úhel v radiánech, jehož tangens je zadaný číselný výraz.
ATN2 Funkce ATN2 vypočítá hlavní hodnotu arkustanensu v radiánech y/x.
CEILING Funkce CEILING vypočítá nejmenší celočíselnou hodnotu větší nebo rovno zadanému číselnému výrazu.
COS Funkce COS vypočítá trigonometrický kosinus zadaného úhlu v radiánech.
COT Funkce COT vypočítá trigonometrický kotangens zadaného úhlu v radiánech.
DEGREES Funkce DEGREES vypočítá odpovídající úhel ve stupních pro úhel zadaný v radiánech.
EXP Funkce EXP vypočítá exponenciální hodnotu zadaného číselného výrazu.
FLOOR Funkce FLOOR vypočítá největší celé číslo menší nebo rovno zadanému číselnému výrazu.
INTADD Funkce INTADD vrátí součet dvou celočíselné hodnoty.
INTBITAND Funkce INTBITAND vrátí porovnání bitů každého operandu pomocí inkluzivního operátoru AND.
INTBITLEFTSHIFT Funkce INTBITLEFTSHIFT vrátí výsledek bitové operace posunu vlevo na celočíselné hodnotě.
INTBITNOT Funkce INTBITNOT vrátí výsledek bitové operace NOT na celočíselné hodnotě.
INTBITOR Funkce INTBITOR vrátí výsledek bitové operace OR se dvěma celočíselnou hodnotou.
INTBITRIGHTSHIFT Funkce INTBITRIGHTSHIFT vrátí výsledek bitové operace posunu doprava na celočíselné hodnotě.
INTBITXOR Funkce INTBITXOR vrátí výsledek bitové exkluzivní operace OR se dvěma celočíselnou hodnotou.
INTDIV Funkce INTDIV vrátí výsledek dělení první celočíselné hodnoty druhou hodnotou.
INTMOD Funkce INTMOD vrátí zbytek dělení první celočíselné hodnoty druhou hodnotou.
INTMUL Funkce INTMUL vrátí součin dvou celočíselné hodnoty.
INTSUB Funkce INTSUB vrátí výsledek odečtení druhé celočíselné hodnoty od první.
LOG Funkce LOG vrátí přirozený logaritmus zadaného číselného výrazu.
LOG10 Funkce LOG10 vrátí logaritmus zadaného číselného výrazu base-10.
NUMBERBIN Funkce NUMBERBIN vypočítá vstupní hodnotu zaokrouhlenou na násobek zadané velikosti.
PI Funkce PI vrátí konstantní hodnotu pí.
POWER Funkce POWER vrátí hodnotu zadaného výrazu, který je násobený samotným daným počtem.
RADIANS Funkce RADIANS vrátí odpovídající úhel v radiánech pro úhel určený ve stupních.
RAND Funkce RAND vrátí náhodně vygenerovanou číselnou hodnotu od nuly do jedné.
ROUND Funkce ROUND vrátí číselnou hodnotu zaokrouhlenou na nejbližší celočíselnou hodnotu.
SIGN Funkce SIGN vrátí kladné znaménko (+1), nula (0) nebo záporné znaménko (-1) zadaného číselného výrazu.
SIN Funkce SIN vrátí trigonometrický sinus zadaného úhlu v radiánech.
SQRT Funkce SQRT vrátí druhou odmocninu zadané číselné hodnoty.
SQUARE Funkce SQUARE vrátí druhou mocninu zadané číselné hodnoty.
TAN Funkce TAN vrátí trigonometrický tangens zadaného úhlu v radiánech.
TRUNC Funkce TRUNC vrátí číselnou hodnotu zkrácenou na nejbližší celočíselnou hodnotu.

Funkce polí

Description
ARRAY_CONCAT Funkce ARRAY_CONCAT vrátí matici, která je výsledkem zřetězení dvou nebo více maticových hodnot.
ARRAY_CONTAINS_ALL Funkce ARRAY_CONTAINS_ALL vrátí logickou hodnotu označující, zda matice obsahuje všechny zadané hodnoty.
ARRAY_CONTAINS_ANY Funkce ARRAY_CONTAINS_ANY vrátí logickou hodnotu označující, zda matice obsahuje některou ze zadaných hodnot.
ARRAY_CONTAINS Funkce ARRAY_CONTAINS vrátí logickou hodnotu označující, zda matice obsahuje zadanou hodnotu. Částečnou nebo úplnou shodu objektu můžete zkontrolovat pomocí logického výrazu v rámci funkce.
ARRAY_LENGTH Funkce ARRAY_LENGTH vrátí počet prvků v zadaném maticovém výrazu.
ARRAY_SLICE Funkce ARRAY_SLICE vrátí podmnožinu výrazu pole pomocí zadaného indexu a délky.
CHOOSE Funkce CHOOSE vrátí výraz na zadaném indexu seznamu nebo Nedefinováno, pokud index překročí hranice seznamu.
OBJECTTOARRAY Funkce OBJECTTOARRAY převede páry polí a hodnot v objektu JSON na pole JSON.
SETINTERSECT Funkce SETINTERSECT vrátí sadu výrazů obsažených v obou vstupních polích bez duplicit.
SETUNION Funkce SETUNION vrátí sadu výrazů obsahujících všechny výrazy ze dvou shromážděných sad bez duplicit.

Agregační funkce

Description
AVG Funkce AVG vypočítá průměr hodnot ve výrazu.
COUNT Funkce COUNT vrátí počet hodnot ve výrazu.
MAX Funkce MAX vrátí maximální hodnotu zadaného výrazu.
MIN Funkce MIN vrátí minimální hodnotu zadaného výrazu.
SUM Funkce SUM vypočítá součet hodnot ve výrazu.

Řetězcové funkce

Description
CONCAT Funkce CONCAT vrátí řetězec, který je výsledkem zřetězení více polí z dokumentu.
CONTAINS Funkce CONTAINS vrátí logickou hodnotu označující, zda první řetězcový výraz obsahuje druhý řetězcový výraz.
ENDSWITH Funkce ENDSWITH vrátí logickou hodnotu označující, zda řetězec končí zadanou příponou. Volitelně může být porovnání nerozlišující malá a velká písmena.
INDEX-OF Funkce INDEX_OF vrátí index prvního výskytu řetězce.
LEFT Funkce LEFT vrátí levou část řetězce až do zadaného počtu znaků.
LENGTH Funkce LENGTH vrátí počet znaků v zadaném řetězcovém výrazu.
LOWER Funkce LOWER vrátí řetězcový výraz po převodu velkých písmen na malá písmena.
LTRIM Funkce LTRIM vrátí řetězcový výraz poté, co odebere počáteční prázdné znaky nebo zadané znaky.
REGEXMATCH Funkce REGEXMATCH vrátí logickou hodnotu určující, zda zadaný řetězec odpovídá zadanému regulárnímu výrazu. Regulární výrazy jsou stručné a flexibilní notace pro hledání vzorů textu.
REPLACE Funkce REPLACE vrátí řetězec se všemi výskyty zadaného řetězce, který je nahrazen.
REPLICATE Funkce REPLICATE vrátí řetězcovou hodnotu, která se opakuje určitým počtem opakování.
REVERSE Funkce REVERSE vrátí obrácené pořadí řetězcové hodnoty.
RIGHT Funkce RIGHT vrátí pravou část řetězce až do zadaného počtu znaků.
RTRIM Funkce RTRIM vrátí řetězcový výraz poté, co odebere koncové prázdné znaky nebo zadané znaky.
STARTSWITH Funkce STARTSWITH vrátí logickou hodnotu označující, jestli první řetězcový výraz začíná druhým.
STRINGEQUALS Funkce STRINGEQUALS vrátí logickou hodnotu určující, zda první řetězcový výraz odpovídá druhému.
STRINGJOIN Funkce STRINGJOIN vrátí řetězec, který zřetězí prvky zadaného pole pomocí zadaného oddělovače mezi jednotlivými prvky.
STRINGSPLIT Funkce STRINGSPLIT vrátí pole podřetězců získaných od oddělení zdrojového řetězce zadaným oddělovačem.
STRINGTOARRAY Funkce STRINGTOARRAY převede řetězcový výraz na pole.
STRINGTOBOOLEAN Funkce STRINGTOBOOLEAN převede řetězcový výraz na logickou hodnotu.
SUBSTRING Funkce SUBSTRING vrátí část řetězcového výrazu začínající na zadané pozici a zadané délce nebo na konec řetězce.
TOSTRING Funkce TOSTRING vrátí řetězcovou reprezentaci hodnoty.
TRIM Funkce TRIM vrátí řetězcový výraz poté, co odebere počáteční a koncové prázdné znaky nebo vlastní znaky.
UPPER Funkce UPPER vrátí řetězcový výraz po převodu dat malých písmen na velká písmena.

Funkce pro datum a čas

Description
DATETIMEADD Funkce DATETIMEADD vrátí hodnotu řetězce data a času, která je výsledkem přidání zadané číselné hodnoty k zadanému řetězci data a času.
DATETIMEBIN Funkce DATETIMEBIN vrátí hodnotu řetězce data a času, která je výsledkem binningu (nebo zaokrouhlování) části zadaného řetězce data a času.
DATETIMEDIFF Funkce DATETIMEDIFF vrátí rozdíl jako celé číslo se dvěma hodnotami data a času zadaného data a času.
DATETIMEFROMPARTS Funkce DATETIMEFROMPARTS vrátí hodnotu řetězce data a času sestavenou ze vstupních číselných hodnot pro různé části data a času.
DATETIMEPART Funkce DATETIMEPART vrátí hodnotu zadané části data a času pro zadané datum a čas.
DATETIMETOTICKS Funkce DATETIMETOTICKS převede zadaný dateTime na záškrty. Jedno zaškrtnutí představuje 100 nanosekund nebo 0,0000001 sekundy.
DATETIMETOTIMESTAMP Funkce DATETIMETOTIMESTAMP převede zadané datum a čas na číselné časové razítko. Časové razítko je podepsané číselné celé číslo, které měří milisekundy od epochy Unixu.
GETCURRENTDATETIME Funkce GETCURRENTDATETIME vrátí aktuální datum a čas UTC (Coordinated Universal Time) jako řetězec ISO 8601 .
GETCURRENTDATETIMESTATIC Funkce GETCURRENTDATETIMESTATIC vrátí stejnou hodnotu data a času UTC pro všechny položky v dotazu jako řetězec ISO 8601. To je užitečné pro konzistentní časová razítka napříč výsledky dotazu.
GETCURRENTTICKS Funkce GETCURRENTTICKS vrátí aktuální čas UTC jako počet intervalů 100 nanosekund (ticks), které uplynuly od 0001-01-01T00:00:00,00,000000Z.
GETCURRENTTICKSSTATIC Funkce GETCURRENTTICKSSTATIC vrátí statickou hodnotu nanosekundových intervalů (100 nanosekundových intervalů od epochy Unixu) pro všechny položky ve stejném oddílu.
GETCURRENTTIMESTAMP Funkce GETCURRENTTIMESTAMP vrátí aktuální časové razítko v milisekundách od epochy Unixu.
GETCURRENTTIMESTAMPSTATIC Funkce GETCURRENTTIMESTAMPSTATIC vrátí statickou hodnotu časového razítka (milisekundy od epochy Unixu) pro všechny položky ve stejném oddílu.
TICKSTODATETIME Funkce TICKSTODATETIME převede zadaný počet záškrtů na hodnotu data a času.
TIMESTAMPTODATETIME Funkce TIMESTAMPTODATETIME převede zadané časové razítko na hodnotu data a času.

Funkce položek

Description
DOCUMENTID Funkce DOCUMENTID vrátí jedinečné ID dokumentu pro danou položku v kontejneru.

Funkce fulltextových vyhledávání

Description
FULLTEXTCONTAINS Funkce FULLTEXTCONTAINS vrátí logickou hodnotu označující, zda je výraz řetězce klíčového slova obsažen v zadané cestě vlastnosti.
FULLTEXTCONTAINSALL Funkce FULLTEXTCONTAINSALL vrátí logickou hodnotu označující, zda jsou všechny zadané řetězcové výrazy obsaženy v zadané cestě vlastnosti.
FULLTEXTCONTAINSANY Funkce FULLTEXTCONTAINSANY vrátí logickou hodnotu označující, zda jsou některé z poskytnutých řetězcových výrazů obsaženy v zadané cestě vlastnosti.
FULLTEXTSCORE Funkce FULLTEXTSCORE vrátí hodnotu skóre BM25, kterou lze použít pouze v ORDER BY RANK klauzuli k seřazení výsledků z nejvyššího významu na nejnižšílevnost zadaných termínů.
RRF Funkce RRF vrátí sloučené skóre kombinací dvou nebo více skóre poskytovaných jinými funkcemi.

Podmíněné funkce

Description
IIF Funkce IIF vrátí jednu ze dvou hodnot v závislosti na tom, jestli se logický výraz vyhodnotí jako true nebo false.

Funkce kontrolující typy

Description
IS_ARRAY Funkce IS_ARRAY vrátí logickou hodnotu označující, jestli je typ zadaného výrazu pole.
IS_BOOL Funkce IS_BOOL vrátí logickou hodnotu označující, jestli je typ zadaného výrazu logická hodnota.
IS_DEFINED Funkce IS_DEFINED vrátí logickou hodnotu označující, zda byla vlastnost přiřazena hodnota.
IS_FINITE_NUMBER Funkce IS_FINITE_NUMBER vrátí logickou hodnotu označující, jestli je číslo konečné číslo (ne nekonečné).
IS_INTEGER Funkce IS_INTEGER vrátí logickou hodnotu označující, jestli je číslo 64bitové celé číslo se znaménkem. 64bitové celá čísla se hlásí v rozsahu od -9,223,372,036,854,775,808 do 9,223,372,036,854,775,807. Další informace najdete v tématu __int64.
IS_NULL Funkce IS_NULL vrátí logickou hodnotu označující, zda je nulltyp zadaného výrazu .
IS_NUMBER Funkce IS_NUMBER vrátí logickou hodnotu označující, jestli je typ zadaného výrazu číslo.
IS_OBJECT Funkce IS_OBJECT vrátí logickou hodnotu označující, jestli je typem zadaného výrazu objekt JSON.
IS_PRIMITIVE Funkce IS_PRIMITIVE vrátí logickou hodnotu označující, jestli je typ zadaného výrazu primitivní (řetězec, logická hodnota, číselná hodnota nebo hodnota null).
IS_STRING Funkce IS_STRING vrátí logickou hodnotu označující, jestli je typ zadaného výrazu řetězec.
STRINGTONULL Funkce STRINGTONULL převede řetězcový výraz na null.
STRINGTONUMBER Funkce STRINGTONUMBER převede řetězcový výraz na číslo.
STRINGTOOBJECT Funkce STRINGTOOBJECT převede řetězcový výraz na objekt.

Prostorové funkce

Description
ST_AREA Funkce ST_AREA vrátí celkovou oblast výrazu GeoJSON Polygon nebo MultiPolygon.
ST_DISTANCE Funkce ST_DISTANCE vrátí vzdálenost mezi dvěma výrazy GeoJSON Point, Polygon, MultiPolygon nebo LineString.
ST_INTERSECTS Funkce ST_INTERSECTS vrátí logickou hodnotu označující, zda objekt GeoJSON zadaný v prvním argumentu protíná objekt GeoJSON v druhém argumentu.
ST_ISVALID Funkce ST_ISVALID vrátí logickou hodnotu označující, zda je zadaný výraz GeoJSON Point, Polygon, MultiPolygon nebo LineString platný.
ST_ISVALIDDETAILED Funkce ST_ISVALIDDETAILED vrátí hodnotu JSON obsahující logickou hodnotu, pokud je zadaný výraz GeoJSON Point, Polygon nebo LineString platný a pokud je neplatný, důvod.
ST_WITHIN Funkce ST_WITHIN vrátí logický výraz označující, zda je objekt GeoJSON zadaný v prvním argumentu v objektu GeoJSON v druhém argumentu.
VECTORDISTANCE Funkce VECTORDISTANCE vrátí skóre podobnosti mezi dvěma zadanými vektory.