gpt4 book ai didi

PHP MYSQL INNER JOIN 到 JSON

转载 作者:行者123 更新时间:2023-11-29 02:22:25 25 4
gpt4 key购买 nike

我有两张 table ,

第一个:表格产品表格产品

| id | name   | code |
| 1 | blouse | AB1 |
| 2 | jeans | BA2 |
| 3 | dress | C61 |

和第二个表格color表格颜色

| id_product | colors | amount |
| 1 | blue | 50 |
| 1 | red | 40 |
| 1 | yellow| 10 |
| 2 | white | 15 |
| 2 | blue | 60 |
| 3 | purple| 110 |

查询:我的查询 php

.../blabla
SELECT product.id, product.name, product.code,color.id_product, color.colors, color.amount
FROM product
INNER JOIN color
ON product.id = color.id_product limit 1

while($query)) {
$var[] = $query;
}
echo '{"status":'. json_encode($var).'}';

输出:

{
"status":{
"1":{
"id":"1",
"code":"blouse",
"id_product":"1",
"colors":"blue",
"amount":"50",
}
}
}

我想要这样的 JSON :

{
"status":{
"1":{
"id":"1",
"code":"blouse",
"id_product":"1",
"colors":"blue",
"amount":"50",
"id_product":"1",
"colors":"red",
"amount":"40",
"id_product":"1",
"colors":"yellow",
"amount":"10",
}
}
}

需要将颜色放入一个数组 json 中,这可能吗?

最佳答案

所以您可能应该使用 group_concat 将它们放入列表中,然后在编码为 json 之前使用 PHP 分解列表。

SQL Fiddle 在这里

http://sqlfiddle.com/#!9/ba3b8/3

SELECT product.id, product.name, product.code,
color.id_product, color.colors, color.amount,
group_concat(color.colors) as clist,
group_concat(color.amount) as alist

from product, color
where product.id = color.id_product
group by color.id_product

然后在您的 PHP 中,您需要循环遍历结果,使用 explode 将列表转换为数组,并在使用 json_encode() 之前根据需要将数据插入结果;

关于PHP MYSQL INNER JOIN 到 JSON,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29554356/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com