如何 return mysql JSON 数组 GROUP_CONCAT 输出?

How to return a mysql JSON array of GROUP_CONCAT output?

我在 MySQL 有一个 table 个绘图部门和团队。 我想检索每个部门的团队数组。 例如,如果我有两个部门 depA (teams teamAA, teamAB), depB (teams teamBA, teamBB, teamBC),我想获得以下 JSON

[
  {
    code: "depA",
    teams: ["teamAA", "teamAB"]
  },
  {
    code: "depB",
    teams: ["teamBA", "teamBB", "teamBC"]
  }
]

我可以使用 GROUP_CONCAT 来获取连接的字符串,但是,我想要一个 JSON 数组,以便我使用的 sequelize.js 库可以隐式解析整个数据结构到 js 对象。

可以这样做,

SELECT `departmentCode` AS `code`, JSON_ARRAY(GROUP_CONCAT(DISTINCT `teamCode`)) AS `teams`