Bagikan melalui


variant_get fungsi

Berlaku untuk:ditandai tanda centang ya Databricks SQL ditandai tanda centang ya Databricks Runtime 15.3 ke atas

Mengekstrak nilai jenis dari variantExpr, yang ditentukan oleh path.

Sintaks

variant_get ( variantExpr, path, type )

Argumen

  • variantExpr: Sebuah VARIANT ekspresi.
  • path: Harfiah STRING dengan ekspresi jalur JSON yang terbentuk dengan baik.
  • type: Harfiah STRING yang menentukan jenisnya.

Mengembalikan

Nilai jenis type.

Jika objek tidak dapat ditemukan, NULL dikembalikan. Jika objek ditemukan tetapi tidak dapat diubah ke jenis yang diinginkan, maka Azure Databricks menghasilkan INVALID_VARIANT_CAST. Untuk mengembalikan NULL alih-alih kesalahan, gunakan fungsi try_variant_get .

Contoh

-- Simple example
> SELECT variant_get(parse_json('{"key": 123, "data": [4, {"a": "hello"}, "str"]}'), '$.data[1].a', 'string')
  hello

-- missing path
> SELECT variant_get(parse_json('{"key": 123, "data": [4, {"a": "hello"}, "str"]}'), '$.missing', 'int')
  null

-- Invalid cast
> SELECT variant_get(parse_json('{"key": 123, "data": [4, {"a": "hello"}, "str"]}'), '$.key', 'array<int>')
  Error: INVALID_VARIANT_CAST.