parse_version()
Dotyczy: ✅Microsoft Fabric✅✅
Konwertuje reprezentację ciągu wejściowego numeru wersji na liczbę dziesiętną, którą można porównać.
Składnia
parse_version
(
Wersja)
Dowiedz się więcej na temat konwencji składni.
Parametry
Nazwisko | Type | Wymagania | Opis |
---|---|---|---|
version | string |
✔️ | Wersja, która ma zostać przeanalizowana. |
Uwaga
- wersja musi zawierać od jednej do czterech części wersji, reprezentowane jako liczby i oddzielone kropkami ('.').
- Każda część wersji może zawierać maksymalnie osiem cyfr z maksymalną wartością na 99999999.
- Jeśli liczba części jest mniejsza niż cztery, wszystkie brakujące części są uznawane za końcowe. Na przykład
1.0
==1.0.0.0
.
Zwraca
Jeśli konwersja zakończy się pomyślnie, wynik jest dziesiętny; w przeciwnym razie wynik jest null
.
Przykłady
Analizowanie ciągów wersji
Poniższe zapytanie przedstawia ciągi wersji ze przeanalizowanymi numerami wersji.
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)
Wyjście
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 |
1 | 1,000,000,000,000,000,000,000,000 |
Porównywanie przeanalizowanych ciągów wersji
Poniższe zapytanie określa, które laboratoria mają sprzęt wymagający aktualizacji, porównując ich przeanalizowane ciągi wersji do minimalnej liczby wersji "1.0.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
Wyjście
Lab | v | needs_update |
---|---|---|
Laboratorium A | 0.0.0.5 | Tak |
Laboratorium B | 0.0.7.0 | Tak |
Laboratorium C | 0,2 | Tak |
Laboratorium D | 0.0.3 | Tak |
Laboratorium E | 1 | Nie |
Laboratorium F | 1.2.3.4 | Nie |
Laboratorium G | 0.1.2.0 | Tak |