parse_version()
Область применения: ✅Microsoft Fabric✅✅
Преобразует входное строковое представление номера версии в десятичное число, которое можно сравнить.
Синтаксис
parse_version
(
Версия)
Дополнительные сведения о соглашениях синтаксиса.
Параметры
Имя (название) | Type | Обязательно | Описание |
---|---|---|---|
version | string |
✔️ | Версия для синтаксического анализа. |
Примечание.
- версия должна содержать от одной до четырех частей версии , представленных в виде чисел и разделенных точками ('.).
- Каждая часть версии может содержать до восьми цифр с максимальным значением в 99999999.
- Если количество частей меньше четырех, все отсутствующие части считаются конечными. Например,
1.0
==1.0.0.0
.
Возвраты
Если преобразование выполнено успешно, результат будет десятичным; в противном случае результат null
.
Примеры
Строки версии синтаксического анализа
В следующем запросе показаны строки версий с их проанализированными номерами версий.
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 | 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 |
Сравнение строк синтаксического анализа версий
Следующий запрос определяет, какие лаборатории нуждаются в обновлении оборудования, сравнивая их строки синтаксической версии с минимальным номером версии "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
Выходные данные
лаборатория | v | needs_update |
---|---|---|
Лаборатория A | 0.0.0.5 | Да |
Лаборатория B | 0.0.7.0 | Да |
Лаборатория C | 0,2 | Да |
Лаборатория D | 0.0.3 | Да |
Lab E | 1 | Нет |
Лаборатория F | 1.2.3.4 | Нет |
Лаборатория G | 0.1.2.0 | Да |