mysql 如何高效地为一个实体获取多个外部条目(多对一条目),而不使用group_concat?

6vl6ewon  于 2023-02-28  发布在  Mysql
关注(0)|答案(1)|浏览(99)

我在SQL中有两个表,属性和照片(字符串文件路径),我想做的是获得每个属性的所有照片,并将其发送到前端,以便它可以迭代并显示所有照片。

Property--------hasAttribute--------Attribute Photo
               P1 | A1
               P1 | A2
               P1 | A3
               P2 | A1
               P2 | A2
               P3 | A2
               P3 | A3

就像这样

P1 | A1 | A2 | A3          P1 | A1, A2, A3
P2 | A1 | A2         or    P2 | A1, A2
P3 | A2 | A3               P3 | A2, A3

但是我想你可以把它们分组,然后用group_concat得到一个单独的字符串,但是这意味着FE必须正则化字符串,这是不好的,所以group_concat不起作用吗?
您将如何返回查询?不完全确定什么是performant。
任何帮助都很感激

avkwfej4

avkwfej41#

实际上GROUP_CONCAT()可以很容易地生成第二个输出版本:

SELECT property, GROUP_CONCAT(attribute ORDER BY attribute) AS attrs
FROM yourTable
GROUP BY property;

相关问题