首頁 >資料庫 >mysql教程 >如何在 MySQL 中取得多行作為單一逗號分隔行?

如何在 MySQL 中取得多行作為單一逗號分隔行?

DDD
DDD原創
2024-11-14 13:49:02473瀏覽

How to Fetch Multiple Rows as a Single Comma-Separated Row in MySQL?

在MySQL 中取得多行作為單一逗號分隔行

問題陳述:

你有兩個表,問題陳述:

你有兩個表,問題陳述:

你有兩個表,問題陳述:

你有兩個表,問題陳述:

你有兩個表, “DISH”和“DISH_HAS_DISHES”,其中菜餚與一對多依賴關係相關。目標是以特定格式從兩個表中檢索資料:每餐的菜餚 ID 和名稱的逗號分隔清單。
  1. 使用 GROUP_CONCAT 函數建議的解決方案:
  2. MySQL提供了GROUP_CONCAT函數,該函數允許根據指定的分隔符號連接多行。利用此函數,您可以實現所需的輸出:
說明:

meal_id dish_ids dish_names
1 2,3,4 dish_2, dish_3, dish_4
JOIN "DISH_HAS_DISHES" (m) 和"DISH" ( d) 基於公共dish_id欄位的表。 使用GROUP_CONCAT(dish_id)將每餐的菜餚ID連接成逗號分隔的字串。將其儲存在dish_ids列中。 類似地,使用GROUP_CONCAT(dish_name)將菜餚名稱連接成逗號分隔的字串並將其儲存在dish_names列中。 GROUP BYmeal_Id確保結果以餐 ID 分組,每餐產生一行。 此查詢應產生所需的輸出格式:

以上是如何在 MySQL 中取得多行作為單一逗號分隔行?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn