Mysql 在SQL中构建JSON对象。我应该在SQL中还是在应用程序中构建对象?

Mysql 在SQL中构建JSON对象。我应该在SQL中还是在应用程序中构建对象?,mysql,sql,json,node.js,Mysql,Sql,Json,Node.js,我通过SQL查询生成JSON对象,但是,我认为应该在应用程序逻辑(node.js)中构建这些对象。给出以下结构和查询;查询数据的方法是什么,以便可以轻松地转换数据 有关完整示例,请参见 **预期输出JSON** { id: <int> parent_comment_id: <int> content: <string> created: <int> user: { id: <int>

我通过SQL查询生成JSON对象,但是,我认为应该在应用程序逻辑(node.js)中构建这些对象。给出以下结构和查询;查询数据的方法是什么,以便可以轻松地转换数据

有关完整示例,请参见

**预期输出JSON**

{
    id: <int>
    parent_comment_id: <int>
    content: <string>
    created: <int>
    user: {
        id: <int>
        username: <string>
        name_first: <string>
        name_last: <string>
    }
    tags: {
        <string>:<int|string>
    }
}
当前查询

SELECT
  `c`.`id` AS `id`,
  `c`.`parent_comment_id` AS `parent_comment_id`,
  `c`.`content` AS `content`,
  `c`.`created` AS `created`,
  CONCAT('{', 
    CONCAT('"id": "', `u`.`id`, '",'),
    CONCAT('"username": "', `u`.`username`, '",'),
    CONCAT('"name_first": "', `u`.`name_first`, '",'),
    CONCAT('"name_last": "', `u`.`name_last`, '"'),
  '}') AS `user`,
  IF(`t`.`id` IS NULL, NULL, CONCAT('{',GROUP_CONCAT( 
    CONCAT_WS(
      ':',
      CONCAT('"',`t`.`ref_type`, '"'),
      `t`.`ref_id`,
      IF(`t`.`ref_text` IS NOT NULL, CONCAT('"',`t`.`ref_text`,'"'), NULL)
    )), '}')) AS `tags`
FROM `comment` AS `c`
JOIN `user` AS `u`
ON `c`.`user_id` = `u`.`id`
LEFT JOIN `comment_tag` AS `t`
ON `c`.`id` = `t`.`comment_id`
GROUP BY `c`.`id`
SELECT
  `c`.`id` AS `id`,
  `c`.`parent_comment_id` AS `parent_comment_id`,
  `c`.`content` AS `content`,
  `c`.`created` AS `created`,
  CONCAT('{', 
    CONCAT('"id": "', `u`.`id`, '",'),
    CONCAT('"username": "', `u`.`username`, '",'),
    CONCAT('"name_first": "', `u`.`name_first`, '",'),
    CONCAT('"name_last": "', `u`.`name_last`, '"'),
  '}') AS `user`,
  IF(`t`.`id` IS NULL, NULL, CONCAT('{',GROUP_CONCAT( 
    CONCAT_WS(
      ':',
      CONCAT('"',`t`.`ref_type`, '"'),
      `t`.`ref_id`,
      IF(`t`.`ref_text` IS NOT NULL, CONCAT('"',`t`.`ref_text`,'"'), NULL)
    )), '}')) AS `tags`
FROM `comment` AS `c`
JOIN `user` AS `u`
ON `c`.`user_id` = `u`.`id`
LEFT JOIN `comment_tag` AS `t`
ON `c`.`id` = `t`.`comment_id`
GROUP BY `c`.`id`