簡體   English   中英

可以將子表作為數組包含在父表中嗎?

[英]Parent MySQL Table with Child Table with list of images can I have the child table as an array in parent table?

如果我具有以下設置的父MySQL表: 姓名| 描述

並且我有一個帶有Parent_ID的子表| 標簽

可能會有多個具有相同parent_ID的標記行。

如何執行SQL查詢以返回完整的父表,但又將parent_id標記包括為數組,即:

[
  {
    "id": 1,
    "name": "name",
    "description": "description",
    "tag": [
      "tag1",
      "tag2",
      "tag3"
    ]
  }
]

我正在使用PHP創建一個rest API,我將做數組並加入php還是在MySQL中這樣做。 通過父ID返回帶有所有匹配標簽的數組的查詢有什么好處? 或者最好僅通過id為tag提供第二個休息端點,然后以這種方式獲取標簽並處理UI層中的顯示。 任何想法都會有所幫助。

您可以使用GROUP_CONCAT函數創建以逗號分隔的值列表:

SELECT 
    a.`id`,
    a.`name`,
    a.`description`,
    GROUP_CONCAT(b.`Tag`) as `tags`
FROM `parent` a
JOIN `child` b
ON a.`id` = b.`parent_id`
GROUP BY a.`id`, a.`name`, a.`description`;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM