Sdílet prostřednictvím


parse_version()

Platí pro: ✅Microsoft FabricAzure Data Explorer✅Azure MonitorMicrosoft Sentinel

Převede reprezentaci vstupního řetězce čísla verze na desítkové číslo, které lze porovnat.

Syntaxe

parse_version ( verze)

Přečtěte si další informace o konvencích syntaxe.

Parametry

Název Type Požadováno Popis
version string ✔️ Verze, která se má analyzovat.

Poznámka:

  • verze musí obsahovat jednu až čtyři části verze, reprezentované jako čísla a oddělené tečkami (".").
  • Každá část verze může obsahovat až osm číslic s maximální hodnotou v 99999999.
  • Pokud je počet částí menší než čtyři, považují se všechny chybějící části za koncové. Například 1.0 == 1.0.0.0.

Návraty

Pokud je převod úspěšný, výsledkem je desetinné číslo; jinak je výsledek null.

Příklady

Parsování řetězců verzí

Následující dotaz zobrazuje řetězce verzí s jejich analyzovanými čísly verzí.

let dt = datatable(v: string)
    [
    "0.0.0.5", "0.0.7.0", "0.0.3", "0.2", "0.1.2.0", "1.2.3.4", "1"
];
dt
| extend parsedVersion = parse_version(v)

Výstup

v parsedVersion
0.0.0.5 5
0.0.7.0 700,000,000
0.0.3 300,000,000
0,2 20,000,000,000,000,000
0.1.2.0 10,000,000,200,000,000
1.2.3.4 1,000,000,020,000,000,300,000,004
0 1,000,000,000,000,000,000,000,000

Porovnání analyzovaných řetězců verzí

Následující dotaz identifikuje, která testovací prostředí potřebují aktualizace, porovnáním analyzovaných řetězců verzí s minimálním číslem verze 1.0.0.0.

let dt = datatable(lab: string, v: string)
[
    "Lab A", "0.0.0.5",
    "Lab B", "0.0.7.0",
    "Lab D","0.0.3",
    "Lab C", "0.2", 
    "Lab G", "0.1.2.0",
    "Lab F", "1.2.3.4",
    "Lab E", "1",
];
dt
| extend parsed_version = parse_version(v)
| extend needs_update = iff(parsed_version < parse_version("1.0.0.0"), "Yes", "No")
| project lab, v, needs_update
| sort by lab asc , v, needs_update

Výstup

laboratoř v needs_update
Testovací prostředí A 0.0.0.5 Ano
Lab B 0.0.7.0 Ano
Testovací prostředí C 0,2 Ano
Lab D 0.0.3 Ano
Testovací prostředí E 0 Ne
Testovací prostředí F 1.2.3.4 Ne
Lab G 0.1.2.0 Ano