gpt4 book ai didi

MySQL:将多个结果显示为新行?

转载 作者:行者123 更新时间:2023-11-29 07:59:51 26 4
gpt4 key购买 nike

好吧,我不得不承认我不是 MySQL/phpMyAdmin 方面的天才,但我总是愿意学习。目前有一个问题我无法解决 - 花了最后几个小时与 Google 联系并决定在这里提问。这就是我所得到的:

SELECT products.products_id AS ID, media.file AS Image 
FROM products
LEFT JOIN media_link ON media_link.link_id = products.products_id
JOIN media ON media.id = media_link.m_id
ORDER BY ID;

基本上,它可以工作。它看起来像这样:

ID | Image
1 | image.jpg
2 | image.jpg
2 | image2.jpg
3 | image.jpg

有没有办法可以这样显示?

ID | Image     | Image2
1 | image.jpg |
2 | image.jpg | image2.jpg
3 | image.jpg |

我确实不是专家,但这可能吗?任何帮助将不胜感激。

最佳答案

如果单个产品的图像数量未知,这不是一个好主意。

我建议您改用GROUP_CONCAT:

SELECT products.products_id AS ID, GROUP_CONCAT(media.file) AS Image 
FROM products
LEFT JOIN media_link ON media_link.link_id = products.products_id
JOIN media ON media.id = media_link.m_id
GROUP BY products.product_id
ORDER BY products.product_id;

结果将是这样的:

ID  Image     
1 image.jpg
2 image.jpg,image2.jpg
3 image.jpg

关于MySQL:将多个结果显示为新行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24139855/

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