我有下列表格 MySQL
代理人
Agent Type
--------------------------
Bob 1,2,3,4
Sam 2,3,4
类型
Type Name
--------------------------
1 Gold
2 Platinum
3 Silver
4 Supreme
我的问题是如何使用 select statement
```
Agent Type
Bob Gold, Platinum, Silver, Supreme
Sam Platinum, Silver, Supreme
2条答案
按热度按时间ygya80vv1#
正如上面提到的,您应该转换代理表,以便type列不是逗号分隔的字符串,您希望每个数字有一行,因此在本例中,代理表将有七行长,您的查询将很简单,例如。
而在当前状态下,可以使用replace代替join:
zujrkrfu2#
这将把数组拆分成行,然后使用groupconcat将其放回数组中。如果agent.type列中最长的数组中有>5个值,则需要缩小此查询的大小以增加表号。