问题陈述:
你有两个表, “DISH”和“DISH_HAS_DISHES”,其中菜肴与一对多相关依赖性。目标是以特定格式从两个表中检索数据:每顿饭的菜肴 ID 和名称的逗号分隔列表。
使用 GROUP_CONCAT 函数建议的解决方案:
MySQL提供了GROUP_CONCAT函数,该函数允许根据指定的分隔符连接多行。利用此函数,您可以实现所需的输出:
SELECT m.meal_Id, GROUP_CONCAT(dish_id) dish_ids, GROUP_CONCAT(dish_name) dish_names FROM DISH_HAS_DISHES m JOIN DISH d ON (m.dish_id = d.dish_id) GROUP BY meal_Id
解释:
此查询应产生所需的输出格式:
meal_id | dish_ids | dish_names |
---|---|---|
1 | 2,3,4 | dish_2, dish_3, dish_4 |
以上是如何在 MySQL 中获取多行作为单个逗号分隔行?的详细内容。更多信息请关注PHP中文网其他相关文章!