parse_version()
適用於:✅Microsoft網狀架構✅Azure 數據✅總管 Azure 監視器✅Microsoft Sentinel
將版本的輸入字串表示轉換為可比較的十進位數。
語法
parse_version
(
版本)
深入瞭解 語法慣例。
參數
姓名 | 類型 | 必要 | 描述 |
---|---|---|---|
version | string |
✔️ | 要剖析的版本。 |
注意
- version 必須包含從一到四個版本元件,以數位表示,並以點分隔('.')。
- 版本的每個部分最多可包含八位數,最大值為 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", "99999999.0.0.0"
];
dt
| project v1=v, _key=1
| join kind=inner (dt | project v2=v, _key = 1) on _key
| where v1 != v2
| summarize v1 = max(v1), v2 = min(v2) by (hash(v1) + hash(v2)) // removing duplications
| project v1, v2, higher_version = iif(parse_version(v1) > parse_version(v2), v1, v2)
輸出
v1 | v2 | higher_version |
---|---|---|
99999999.0.0.0 | 0.0.0.5 | 99999999.0.0.0 |
1 | 0.0.0.5 | 1 |
1.2.3.4 | 0.0.0.5 | 1.2.3.4 |
0.1.2.0 | 0.0.0.5 | 0.1.2.0 |
0.2 | 0.0.0.5 | 0.2 |
0.0.3 | 0.0.0.5 | 0.0.3 |
0.0.7.0 | 0.0.0.5 | 0.0.7.0 |
99999999.0.0.0 | 0.0.7.0 | 99999999.0.0.0 |
1 | 0.0.7.0 | 1 |
1.2.3.4 | 0.0.7.0 | 1.2.3.4 |
0.1.2.0 | 0.0.7.0 | 0.1.2.0 |
0.2 | 0.0.7.0 | 0.2 |
0.0.7.0 | 0.0.3 | 0.0.7.0 |
99999999.0.0.0 | 0.0.3 | 99999999.0.0.0 |
1 | 0.0.3 | 1 |
1.2.3.4 | 0.0.3 | 1.2.3.4 |
0.1.2.0 | 0.0.3 | 0.1.2.0 |
0.2 | 0.0.3 | 0.2 |
99999999.0.0.0 | 0.2 | 99999999.0.0.0 |
1 | 0.2 | 1 |
1.2.3.4 | 0.2 | 1.2.3.4 |
0.2 | 0.1.2.0 | 0.2 |
99999999.0.0.0 | 0.1.2.0 | 99999999.0.0.0 |
1 | 0.1.2.0 | 1 |
1.2.3.4 | 0.1.2.0 | 1.2.3.4 |
99999999.0.0.0 | 1.2.3.4 | 99999999.0.0.0 |
1.2.3.4 | 1 | 1.2.3.4 |
99999999.0.0.0 | 1 | 99999999.0.0.0 |