首页 > 解决方案 > 从两个数据表中返回一个数组,这是在输出 JSON 之前在 mySQL 或 PHP 中完成的吗?

问题描述

我的数据库中有两个表,我试图返回一些有条件组合两个表的 JSON。我不想合并这些表,所以我想我必须SELECT * FROM ____ WHERE ____对两个表进行查询,然后在 SQL 中处理这个问题,或者在输出 JSON 之前在 PHP 中循环遍历两个表的项目。

当前每个 SQL 查询的两个输出 JSON 数组(单独使用):

//Menu Categories
{
    "Menu_Categories": [{
            "category_id": "1",
            "category_name": "Salads"
        },
        {
            "category_id": "2",
            "category_name": "Toasties"
        }
    ]
}

// Menu Items
{
    "Menu_Items": [{
            "menu_item_id": "1",
            "menu_item_category": "1",
            "menu_item_name": "Cesar Salad",
            "menu_item_status": "L"
        },
        {
            "menu_item_id": "2",
            "menu_item_category": "2",
            "menu_item_name": "Ham and goats cheese",
            "menu_item_status": "L"
        }
    ]
}

我想要实现的是 JSON 的一个输出,格式为:

{
    "Menu_Categories": [{
            "category_id": "1",
            "category_name": "Salads",
            "menu_items": [{
                "menu_item_id": "1",
                "menu_item_category": "1",
                "menu_item_name": "Cesar Salad",
                "menu_item_status": "L"
            }]
        },
        {
            "category_id": "2",
            "category_name": "Toasties",
            "menu_items": [{
                "menu_item_id": "2",
                "menu_item_category": "2",
                "menu_item_name": "Ham and goats cheese",
                "menu_item_status": "L"
            }]
        }
    ]
}

对于任何错误,我深表歉意,我目前正在学习 Swift,并且一直在涉足数据库。如果有人能告诉我是否需要在其他地方/在我的 PHP 脚本/在数据库中处理这个问题,那就太好了。这只是数据库的一个示例,其中有很多被剥离的数据库,但是如果这对我的 SQL 查询有帮助的话,就会为每个 Menu_Item 分配一个 category_id 的外键。先感谢您!

标签: phpmysqlarraysjsonswift

解决方案


推荐阅读