我有这些表
TABLE_1
数... ...字母名称
1 ..... AB ...彼得
2 ... ... BC保罗
3 ... ... AC玛丽TABLE_2
信...名称
一... NULL
乙... NULL
ç... NULL
我必须将Table_2更新为此
TABLE_2
信...名称
A ......彼得,玛丽 B ......彼得,保罗 C ......保罗,玛丽
除数字行外,所有都是varchar。它连接在“字母”行上具有特定字母的所有名称。如何在sql中只使用一个查询来执行此操作?
答案 0 :(得分:0)
您可以使用update
中的子查询执行此操作:
update table2
set names = (select group_concat(t1.name order by number separator ', ')
from table1 t1
where t1.letters like concat('%', table2.letter, '%')
);