【发布时间】:2023-01-29 22:36:32
【问题描述】:
使用 Mariadb 10.6 - 在以下示例中,我尝试将 json 对象的条目转换为表行:
SELECT *
FROM JSON_TABLE('{
"1": [1, 123.25],
"10": [2, 110.5],
"100": [3, 105.75]
}', '$.*' COLUMNS (
col1 decimal(13,2) PATH '$',
col2 int PATH '$[0]',
col3 decimal(17,2) PATH '$[1]'
)) table1
结果是:
| col1 | col2 | col3 |
|---|---|---|
| NULL | 1 | 123.25 |
| NULL | 2 | 110.50 |
| NULL | 3 | 105.75 |
有没有办法用属性键(“1”、“10”、“100”)填充“col1”?
我想有一些“关键词”来引用密钥,但我在 MariaDB 或 MySQL 的文档中找不到任何关于此的信息。
我已经做了一个例程,通过循环 JSON_KEYS 的输出来创建一个临时表,但如果我可以使用 JSON_TABLE 来完成这项工作,它会更优雅。
【问题讨论】: