gpt4 book ai didi

javascript - 使用 JSON 格式的 Node.JS 从 MySQL 中检索数据

转载 作者:可可西里 更新时间:2023-11-01 08:09:56 25 4
gpt4 key购买 nike

我有以下 MySQL 表:

| category | icon |
-------------------
| CAT_A | xxx |
| CAT_B | yyy |

| sub_category | icon | category
--------------------------------
| SUB_X | ppp | CAT_A
| SUB_Y | qqq | CAT_A
| SUB_Z | rrr | CAT_B
| SUB_U | www | CAT_B

现在我想在一个查询中获取所有数据我正在使用 Node.JS 并编写了以下查询

SELECT c.category categoryTitle, c.icon categoryIcon, s.sub_category subCategoryTitle, s.icon subCategoryIcon FROM categories c INNER JOIN sub_categories s ON c.title = s.category

这是我的 Node.JS 代码

var arrCategories = [];
for (var category in rows) {
if (rows.hasOwnProperty(category))
arrCategories.push(rows[category]);
}
response.json(arrCategories);

现在我得到以下响应

[
{
"categoryTitle":"CAT_A",
"categoryIcon":"xxx",
"subCategoryTitle":"SUB_X",
"subCategoryIcon":"ppp"
},
{
"categoryTitle":"CAT_A",
"categoryIcon":"xxx",
"subCategoryTitle":"SUB_Y",
"subCategoryIcon":"qqq"
},......
]

但我想要以下输出:

[
{
"categoryTitle":"CAT_A",
"categoryIcon":"xxx",
"subCategory":[
{
"subCategoryTitle":"SUB_X",
"subCategoryIcon":"ppp"
},
{
"subCategoryTitle":"SUB_Y",
"subCategoryIcon":"qqq"
},
]
},......
]

我应该怎么做才能获得所需格式的输出

需要任何帮助

最佳答案

这是另一个不需要更改 SQL 的选项。

var categoryMap = {};
var categories = [];
rows.forEach(function(row) {
var category = categoryMap[row.categoryTitle];
if (!category) {
category = {
categoryTitle: row.categoryTitle,
categoryIcon: row.categoryIcon,
subCategory: []
};

categoryMap[row.categoryTitle] = category;
categories.push(category);
}

category.subCategory.push({
subCategoryTitle: row.subCategoryTitle,
subCategoryIcon: row.subCategoryIcon
});
});

response.json(categories);

关于javascript - 使用 JSON 格式的 Node.JS 从 MySQL 中检索数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39930383/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com