更改 SQL 以便将子查询结果展平为两个单独的数组

Changing AQL so that sub-query result is flattened into two seperate arrays

此查询有效:

FOR person IN 1..1 INBOUND @companyID employed_by
    LET age = DATE_DIFF(person.age * 1000, @currentTime * 1000, 'y')
    COLLECT label = age WITH COUNT INTO value
        RETURN {data: label, frequency: value}

然后给我这个:

[
    {
        data: 18,
        frequency: 69
    },
    {
        data: 19,
        frequency: 73
    },
    {
        data: 20,
        frequency: 86
    }
]

但我真正想要的是这样的东西

{
    data: [18, 19, 20]
    frequency: [69, 73, 86]
}

我原以为以下查询会起作用 - 但 PUSH 语句失败(语法错误),我在 FOR 循环中尝试了一堆 PUSH 语句,但无法让它们按预期工作,这意味着我正在做一些绝对精神

LET data = []
LET frequency = []
LET temp = 
        (
            FOR person IN 1..1 INBOUND @companyID employed_by
                LET age = DATE_DIFF(person.age * 1000, @currentTime * 1000, 'y')
                COLLECT label = age WITH COUNT INTO value
                    data = PUSH(data, label)
                    frequency = PUSH(frequency, value)
                    RETURN true
        )
RETURN {data: data, frequency: frequency}

任何建议都很好!

而且,经过更多的摆弄之后 - 这似乎正是我所需要的:

LET temp = 
    (
        FOR person IN 1..1 INBOUND @companyID employed_by
            LET age = DATE_DIFF(person.age * 1000, @currentTime * 1000, 'y')
            COLLECT label = age WITH COUNT INTO value
                RETURN {data: label, frequency: value}
    )
RETURN {data: temp[*].data, frequency: temp[*].frequency}