我有一个数据库表,其中包含一个人的指纹(此处为template
列),每个人可以插入2个手指,因此同一个人必须具有2条记录。
这是表格:
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
当然,取决于您要如何存储新数据
:)