将子查询的结果作为字段返回
Returning the result of a subquery as a field
我实际上是在尝试 return 我的外部查询字段中的子查询结果,如下所示:
SELECT field1, field2, field8 = (SELECT * FROM TABLE)
FROM OTHERTABLE
我找到了一个我预期功能的示例 here,但它似乎不适用于 mariadb(据我所知只是 mysql)。有没有办法用 mysql 做到这一点,或者我错过了什么?我收到“'field list' 中的未知列 'field8'”。
我正在使用一个节点 mysql 模块,我希望实现
[{
field1: something,
field2: somethingelse,
field8: [{
data, data, data
},{
data, data, data
}]
}]
如果这不可能,我总是可以执行两个单独的查询
修复语法,使用JSON_ARRAYAGG()
将行集转换为json:
SELECT
field1,
field2,
JSON_ARRAYAGG((SELECT * FROM TABLE)) as field8
FROM OTHERTABLE
GROUP BY field1, field2
我实际上是在尝试 return 我的外部查询字段中的子查询结果,如下所示:
SELECT field1, field2, field8 = (SELECT * FROM TABLE)
FROM OTHERTABLE
我找到了一个我预期功能的示例 here,但它似乎不适用于 mariadb(据我所知只是 mysql)。有没有办法用 mysql 做到这一点,或者我错过了什么?我收到“'field list' 中的未知列 'field8'”。
我正在使用一个节点 mysql 模块,我希望实现
[{
field1: something,
field2: somethingelse,
field8: [{
data, data, data
},{
data, data, data
}]
}]
如果这不可能,我总是可以执行两个单独的查询
修复语法,使用JSON_ARRAYAGG()
将行集转换为json:
SELECT
field1,
field2,
JSON_ARRAYAGG((SELECT * FROM TABLE)) as field8
FROM OTHERTABLE
GROUP BY field1, field2