2016-05-31 73 views
0

我有一個數據庫表,其中包含人的指紋(template列在這裏),每個人可以引入2個手指,所以同一個人必須有2個記錄。 下面是表:合併一行中的MySQL數據庫表的每2行

enter image description here

人與ID '275' 具有2個記錄,對每一個單個手指。 現在,我使用了Talend創建一個表,所以我可以在一個單一的一個每兩個指紋合併,我的意思是排N°37和38將在單行和template列將級聯,只有一個person_id

+0

什麼是你的問題? –

+0

如何將單個人的每個2個指紋合併爲一行? –

回答

0

你可以嘗試這樣的事情:

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 

當然,depnds你想如何存儲新數據

:)

+0

謝謝@Enrique的解決方案,實際上我找到了一個解決方案,它可以工作,我會將它作爲響應發佈,所以只要有人需要它就可以找到它;) –

0

我找到了一個解決方案: enter image description here

我加入了同一個表兩次輸入和輸出一樣顯示在這張照片,並第一次與此查詢脫口說:

select FP_ID, FP_DEVICE, group_concat(FP_FINGER_PRINT SEPARATOR ''),FP_EMPLOYEE_ID 
from t_finger_print GROUP BY FP_EMPLOYEE_ID;