案例一
將a表中的指定字段插入b表中:
insert into b (id,name,address) select id,name, "北京" from a
案例二
將a表中的name字段按連接符連接後寫入b表,(a表中多行數據合併成b表中的一行數據)
insert into b(id, name,address)
(SELECT id,(select GROUP_CONCAT(distinct name SEPARATOR '|') as tmp_type FROM a WHERE id in(1,2,3))
FROM a WHERE id=1
#distinct 用來對字段進行去重
#同樣類似的函數還有CONCAT、 CONCAT_ws
案例三
按addr字段分組後取得組內條數是2的記錄,並且合併id和n_type字段,同時只取其中一條數據的id做爲新記錄的id.
最終效果便是分組內的兩條數據合併成一條
select addr, GROUP_CONCAT(distinct id SEPARATOR '|') as
sum_ids,SUBSTRING_INDEX(GROUP_CONCAT(distinct id SEPARATOR
'|'),'|',1) as tmp_id,GROUP_CONCAT(distinct n_type
SEPARATOR '|') as tmp_type from val_t GROUP BY
addr HAVING count(1)=2