Clickhouse 将每行 json 内容的 table 转换为 table
Clickhouse convert table with json content each row into table
我已尝试将 json 行转换为具有此 json 字段的 table。查看 Clickhouse 文档后,我找不到可以处理此任务的一些 clickhouse FUNCTION
这是 table 和
col_a
{"casa":2,"value":4}
{"casa":6,"value":47}
建议仅使用 Clickhouse SQL (CREATE WITH SELECT) int this table
casa
value
2
4
6
47
SELECT
'{"casa":2,"value":4}' AS j,
JSONExtractKeysAndValuesRaw(j) AS t
┌─j────────────────────┬─t────────────────────────────┐
│ {"casa":2,"value":4} │ [('casa','2'),('value','4')] │
└──────────────────────┴──────────────────────────────┘
SELECT
'{"casa":2,"value":4}' AS j,
JSONExtract(j, 'Tuple(casa Int64, value Int64)') AS t,
tupleElement(t, 'casa') AS casa,
tupleElement(t, 'value') AS value
┌─j────────────────────┬─t─────┬─casa─┬─value─┐
│ {"casa":2,"value":4} │ (2,4) │ 2 │ 4 │
└──────────────────────┴───────┴──────┴───────┘
我已尝试将 json 行转换为具有此 json 字段的 table。查看 Clickhouse 文档后,我找不到可以处理此任务的一些 clickhouse FUNCTION
这是 table 和
col_a |
---|
{"casa":2,"value":4} |
{"casa":6,"value":47} |
建议仅使用 Clickhouse SQL (CREATE WITH SELECT) int this table
casa | value |
---|---|
2 | 4 |
6 | 47 |
SELECT
'{"casa":2,"value":4}' AS j,
JSONExtractKeysAndValuesRaw(j) AS t
┌─j────────────────────┬─t────────────────────────────┐
│ {"casa":2,"value":4} │ [('casa','2'),('value','4')] │
└──────────────────────┴──────────────────────────────┘
SELECT
'{"casa":2,"value":4}' AS j,
JSONExtract(j, 'Tuple(casa Int64, value Int64)') AS t,
tupleElement(t, 'casa') AS casa,
tupleElement(t, 'value') AS value
┌─j────────────────────┬─t─────┬─casa─┬─value─┐
│ {"casa":2,"value":4} │ (2,4) │ 2 │ 4 │
└──────────────────────┴───────┴──────┴───────┘