使用嵌套JSON_ARRAYAGG的使用功能组无效

问题描述

我有以下简单查询

select 
    jrt.threadId,JSON_ARRAYAGG(
        JSON_OBJECT(
        'roundId',jrr.roundId,'bets',JSON_ARRAYAGG(
                    JSON_OBJECT(
                        'betId',bets.betId,'amount',bets.amount
                    )
            )
        )
    ) as rounds
from threads jrt
    left join rounds jrr on jrt.threadId = jrr.threadId
            left join bets on jrr.roundId= bets.roundId
group by jrt.threadId

如果我从头一个bets键值中删除JSON_OBJECT,这基本上可以工作。

我很难理解错误的确切原因,因为这几乎没有暗示性。

{"code":"ER_INVALID_GROUP_FUNC_USE","errno":1111}

如果我在JSON_ARRAY上使用bets聚合函数而不是JSON_ARRAYAGG,则查询也可以工作。

如果Bets一个聚合,为什么JSON_ARRAYAGG会引发错误

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)