[英]Displaying php mysqli query result with one to many relationship
当前的:
过程 | 技能 |
---|---|
过程A | 技能_1 |
过程A | 技能_2 |
过程A | 技能_3 |
工艺 B | 技能_1 |
工艺 B | 技能_2 |
预期结果:
过程 | 技能 |
---|---|
过程A | 技能_1、技能_2、技能_3 |
工艺 B | 技能_1、技能_2 |
样品 SQL:
SELECT p.pid,
p.process,
p.product_id,
p.sr_id,
sr.pid,
sr.process_id,
sr.skill_req,
sr.availability
FROM p
JOIN sr
ON p.pid= sr.pid
WHERE p.product_id= '20'
需要帮助如何重新排列我的一对多关系表。 尝试使用数组 "$array= array($row['skill_req']) " 但无法识别 Skill_req 变量。
您正在寻找GROUP BY
和GROUP_CONCAT
对于您的请求,请从以下内容开始,然后查看 go 的位置:
SELECT p.pid,
p.process,
GROUP_CONCAT(sr.skill_req),
FROM p
JOIN sr
ON p.pid= sr.pid
WHERE p.product_id= '20'
GROUP BY p.process
请注意,SQL 将始终为您提供一个二维数组,永远不会多,永远不会少。 这意味着您作为查询结果可视化的单元格不能包含数组。 充其量,您将拥有逗号分隔的值,您可以将其转换为 PHP 端的数组。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.