javascript - 如何根据 SQL 表中的字段创建 JSON 数组?(Node.js - MsSQL)
问题描述
我有一个基于Node.js和Microsoft SQL server的项目。数据库中只有一个表,我需要根据它的记录获取一个JSON对象。
该表如下所示:
在这里我们可以看到有相同字段的记录。假设该表名为“Table1”。我们需要进行查询以获取以下形式的 JSON:
{
"animal": {
"fish": ["shark"],
"insect": ["fly", "wasp"]
},
"plant": {
"wild": ["pine"],
"cultural": ["apple"]
},
"human": {
"adult": ["unemployed"],
"kid": ["studying"]
}
}
也就是说,我需要的不是记录本身,而是根据这些记录生成一个菜单。使用mssql建立与数据库的连接:
router.get("/", async (req, res) => {
try {
await sql.connect(`mssql://${config.get('SQL_USER')}:${config.get('SQL_PASSWORD')}@${config.get('HOST')}/${config.get('DATABASE')}`);
const data = await sql.query`THE_SQL_QUERY`;
res.json(data);
} catch (err) {
console.error(err.message);
res.status(500).send('Server Error');
}
});
您能否告诉我是否可以执行查询以便在输出中获得这样的 json?我对SQL没有这么深的了解,如果你告诉我,我将不胜感激。
感谢关注!
解决方案
推荐阅读
- google-cloud-platform - 通过 terraform 授予对特定 BQ 表的访问权限
- server - 所有网络的广播 IP 地址是什么?
- java - java.lang.NoClassDefFoundError:在 spark-shell 中查询时出现 org/apache/hadoop/hive/ql/metadata/HiveException
- javascript - Facebook api 不返回电子邮件,而是返回其余的请求字段
- mysql - 保留查询中的 mysql 查询结果和变量集以供跨页面和会话使用
- python - 十进制到罗马转换程序在 Python 中给出错误答案
- parsing - Avro 多个枚举 int 相同类型(avro.SchemaParseException:无法重新定义)
- yaml - 如何根据给定的 openapi 3.0.3 yaml 文件生成 Quarkus rest JX-RS 服务
- c# - 通过反射解析字符串路径,如 WPF 绑定
- angular - 组件之间的角度和传递数据:解决保护与服务注入的用例