Mysql 具有数组id的内部联接

Mysql 具有数组id的内部联接,mysql,Mysql,我有mysql数据库 A/ id, name B/ id, title, A_ids A_ids array id table A ex: "1,4,5" 身份证、姓名 B/id、标题、A\U id A_ids数组id表A例如:“1,4,5” 相同数据 A 1; "HaNoi" 2; "HCM"; 3; "HP" B 1; "abc","1,2" 2; "ztz","1" 3; "abc","3,2" 4; "ztz","3" A. 1.“河内” 2.“HCM”; 3.“HP” B 1.“a

我有mysql数据库

A/ id, name B/ id, title, A_ids A_ids array id table A ex: "1,4,5" 身份证、姓名 B/id、标题、A\U id A_ids数组id表A例如:“1,4,5” 相同数据

A 1; "HaNoi" 2; "HCM"; 3; "HP" B 1; "abc","1,2" 2; "ztz","1" 3; "abc","3,2" 4; "ztz","3" A. 1.“河内” 2.“HCM”; 3.“HP” B 1.“abc”,“1,2” 2.“ztz”,“1” 3.“abc”,“3,2” 4.“ztz”,“3” 我想要结果

1; "abc","HaNoi,HCM" 2; "ztz","HaNoi" 3; "abc","HP,HCM" 4; "ztz","HP" 1.“abc”,“河内,HCM” 2.“ztz”,“河内” 3.“abc”、“HP、HCM” 4.“ztz”、“HP” 你怎么能这么做?
谢谢

您需要一个组合,用于连接的是
find_in_set()
,用于输出的是
group_concat()

select b.id, b.title, group_concat(a.name order by a.id) a_names
from tableb b
left join tablea a on find_in_set(a.id, b.A_ids) > 0
group by 1, 2

请参阅使用示例数据。

欢迎使用StackOverflow。如果你能包括一些你尝试过的东西,以及它们为什么不起作用,这将有助于解决你的问题。