Последнее обновление
VARIANT_TYPE
Назначение
Функция VARIANT_TYPE возвращает фактический тип значения VARIANT.
Эта функция обычно используется для отладки или анализа структуры данных VARIANT, помогая определять типы и обрабатывать данные.
Синтаксис
VARIANT_TYPE(variant_value)
Параметры
variant_value: значение типаVARIANT.
Возвращаемое значение
- Возвращает строку, представляющую фактический тип значения
VARIANT.- Строка имеет структуру
{"key":"value"}. - Ключ указывает путь к подполю, а значение указывает тип.
- Строка имеет структуру
Примечания
- Используется для определения фактического типа данных, хранящихся в столбце
VARIANT. - Для каждой строки таблицы считываются подполя, чтобы определить их тип. На практике используйте
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 |
+-------------------------------------------+