このクエリでカーソルを(MySQL SPプログラミング言語、Java、Python、.NETで)実行します:
select Name, Firstname, Lastname, count(1)
from Pruebas
group by Name, Firstname, Lastname
having count(1) > 1
次に、カーソルから返された行で、必要なことをすべて実行します。FIN%インスタンスを確認し、PersonalKeyの存在を確認し、それに応じて更新します。
カーソルの行ごとに、次のコマンドで異なるカーソルを開くことができます:
select *
from Pruebas
where Name = the_Name
and Firstname = the_Firstname
and Lastname = the_Lastname
これで、変更するすべての行を含む内部カーソルが作成されます。必要なものである場合は、それを保持し、言及したKEY値で更新します。それ以外の場合は削除してください。
Oracleでは、1つのクエリで目的を達成できますが、この方法でこのアプローチと同じパフォーマンスが得られるとは思いません。
お役に立てば幸いです。