我无法使用json_table从嵌套json中获取数据我的MariaDB服务器是10.6.0
set @json='
{
"id":"9696e1ac-e173-4905-ac51-c47c0ef8c90b",
"username":"demo@demo.com",
"firstName":"DEMO",
"lastName":"DEMO",
"email":"demo@demo.com",
"isEnabled":true,
"attributes":{
"ASSOCIATED_COMPANY":"CLCORP001,CLCORP002,CLCORP003,CLCORP004,PECORP001,PECORP002,PECORP003,PECORP004,PECORP005,DECORP001",
"ROLES":"[\"Super Admin\",\"Admin\",\"Executive\"]",
},
}';
我试过了,但是没用
SELECT
*
FROM
SELECT * FROM json_table(@json, '$.*' COLUMNS(NESTED PATH '$.attributes.ROLES[*]' COLUMNS (roles varchar(250) PATH '$'))) roles
TEXT PATH '$'))) roles
1条答案
按热度按时间a6b3iqyw1#
无论是MySQL还是MariaDB:如果您的json字符串无效,json_object将始终失败。
在MySQL和MariaDB中,您都可以使用json_valid()函数来检查您的json:
如果成功,JSON_VALID将返回1。
我没有详细检查,但看起来属性中有额外的引号。不允许使用ROLES。