我在MySQL中有这2个表:
表___Photos
:
|--------|-----------|-------------|
| AMP_Id | AMP_Photo | AMP_Formats |
|--------|-----------|-------------|
| 1 | dog.jpg | 1,2 |
| 1 | cat.jpg | 3 |
|--------|-----------|-------------|
表___Formats
:
|--------|------------|
| AMF_Id | AMF_Format |
|--------|------------|
| 1 | 10x10 |
| 2 | 30x30 |
| 3 | 40x40 |
|--------|------------|
如何列出___Formats
中链接格式的每张照片?
例如,对于上面显示的表,我需要类似这样的东西:
|-----------|-------------|
| AMP_Photo | AMF_Format |
|-----------|-------------|
| dog.jpg | 10x10,30x30 |
| cat.jpg | 40x40 |
|-----------|-------------|
这是我迄今为止所尝试的:
SELECT
AMP_Photo,
IFNULL(GROUP_CONCAT(AMF_Format), "") as list_formats
FROM ___Photos i
LEFT JOIN ___Formats f
ON f.AMF_Id = AMF_Format
GROUP BY AMP_Photo
ORDER BY AMP_Photo ASC
1条答案
按热度按时间bvjveswy1#
可以使用
concat
执行以下操作:此处演示:https://dbfiddle.uk/eiQIgI8f