Saya akan menjalankan kursor (dengan bahasa pemrograman MySQL SP, Java, Python, .NET) pada kueri ini:
select Name, Firstname, Lastname, count(1)
from Pruebas
group by Name, Firstname, Lastname
having count(1) > 1
Kemudian, pada baris yang dikembalikan dari kursor, lakukan saja apa pun yang Anda perlukan:periksa instance FIN%, periksa keberadaan PersonalKey, dan perbarui yang sesuai.
Untuk setiap baris pada kursor, Anda dapat membuka kursor yang berbeda dengan:
select *
from Pruebas
where Name = the_Name
and Firstname = the_Firstname
and Lastname = the_Lastname
Dan sekarang, Anda akan memiliki kursor dalam dengan semua baris yang akan Anda modifikasi. Jika itu yang Anda butuhkan, simpan dan perbarui dengan nilai KEY yang Anda sebutkan. Jika tidak, hapus.
Di Oracle, Anda dapat mencapai apa yang Anda inginkan dalam satu kueri, tetapi saya rasa Anda tidak akan mendapatkan kinerja yang sama dengan pendekatan ini.
Semoga membantu.