Bagikan melalui


parse_version()

Berlaku untuk: ✅Microsoft Fabric

Mengonversi representasi string input dari nomor versi menjadi angka desimal yang dapat dibandingkan.

Sintaks

parse_version ( versi)

Pelajari selengkapnya tentang konvensi sintaksis.

Parameter

Nama Tipe Wajib Deskripsi
versi string ✔️ Versi yang akan diurai.

Catatan

  • versi harus berisi dari satu hingga empat bagian versi, diwakili sebagai angka dan dipisahkan dengan titik ('.').
  • Setiap bagian versi dapat berisi hingga delapan digit, dengan nilai maksimum pada 99999999.
  • Jika jumlah bagian kurang dari empat, semua bagian yang hilang dianggap sebagai bagian berikutnya. Contohnya,1.0 == 1.0.0.0.

Mengembalikan

Jika konversi berhasil, hasilnya adalah desimal; jika tidak, hasilnya null.

Contoh

Mengurai string versi

Kueri berikut menunjukkan string versi dengan nomor versi yang diurai.

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)

Hasil

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

Membandingkan string versi yang diurai

Kueri berikut mengidentifikasi lab mana yang memiliki peralatan yang memerlukan pembaruan dengan membandingkan string versi yang diurai dengan nomor versi minimum "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

Hasil

Lab v needs_update
Lab A 0.0.0.5 Ya
Lab B 0.0.7.0 Ya
Lab C 0,2 Ya
Lab D 0.0.3 Ya
Lab E 1 Tidak
Lab F 1.2.3.4 Tidak
Lab G 0.1.2.0 Ya