メインコンテンツまでスキップ
バージョン: 26.x

VARIANT_TYPE

ファンクション

VARIANT_TYPE関数はVARIANT値の実際の型を返します。 この関数は通常、VARIANTデータの構造をデバッグまたは分析するために使用され、型の判定とデータ処理を支援します。

Syntax

VARIANT_TYPE(variant_value)

パラメータ

  • variant_value: VARIANT型の値。

戻り値

  • VARIANT値の実際の型を表す文字列を返します。
    • 文字列は{"key":"value"}構造に従います。
    • keyはサブフィールドパスを表し、valueは型を表します。

注意事項

  1. VARIANTカラムに格納されている実際の型を見つけるために使用されます。
  2. Tableの各行に対して、サブフィールドが読み取られて型が取得されます。実際には、実行が遅くなることを避けるためにLIMITを使用して行数を制限してください。

CREATE TABLE variant_table(
k INT,
v VARIANT NULL
)
DUPLICATE KEY(`k`)
DISTRIBUTED BY HASH(`k`) BUCKETS 1
PROPERTIES (
"replication_num" = "1"
);

INSERT INTO variant_table VALUES(1, '{"a": 10, "b": 1.2, "c" : "ddddd"}'), (2, NULL);

SELECT VARIANT_TYPE(v) FROM variant_table;
+-------------------------------------------+
| VARIANT_TYPE(v) |
+-------------------------------------------+
| {"a":"tinyint","b":"double","c":"string"} |
| NULL |
+-------------------------------------------+