我有一个数据库表,其中包含一个人的指纹(此处为template列),每个人可以插入2个手指,因此同一个人必须具有2条记录。
这是表格:

mysql - 在一行中合并MySQL数据库表的每两行-LMLPHP

ID为“ 275”的人有2条记录,每条记录一个手指。
现在,我正在使用Talend创建一个表,这样就可以将每两个指纹合并为一个指纹,这意味着第37和38行将在单个行中,而template列将被串联为只有一个person_id

最佳答案

您可以尝试如下操作:

INSERT INTO newtable (ids, person_id_integer)
SELECT CONCAT(finger1.id, "|", finger2.id), finger1.person_id_integer
FROM oldtable finger1, oldtable finger2
where finger1.person_id_integer = finger2.person_id_integer
and finger1.id <> finger2.id

当然,取决于您要如何存储新数据
:)

10-08 00:29