sql >> Database >  >> RDS >> Mysql

MySQL Dubbele rijen

Ik zou een cursor uitvoeren (met MySQL SP-programmeertaal, Java, Python, .NET) op deze vraag:

select Name, Firstname, Lastname, count(1)
  from Pruebas
 group by Name, Firstname, Lastname
having count(1) > 1

Doe vervolgens op de geretourneerde rijen van de cursor wat u wilt:controleer op het FIN%-exemplaar, controleer op de aanwezigheid van PersonalKey en werk dienovereenkomstig bij.

Voor elke rij op de cursor kun je een andere cursor openen met:

select *
  from Pruebas
 where Name = the_Name
   and Firstname = the_Firstname
   and Lastname = the_Lastname

En nu heb je een innerlijke cursor met alle rijen die je gaat wijzigen. Als het degene is die je nodig hebt, bewaar het dan en werk het bij met de KEY-waarde die je noemde. Verwijder het anders.

In Oracle zou je in één query kunnen bereiken wat je wilt, maar ik denk niet dat je op die manier dezelfde prestaties krijgt als met deze aanpak.

Ik hoop dat het helpt.



  1. Verwijderen - Ik kan de doeltabel niet specificeren?

  2. Verwijder volgnullen in decimale waarde met veranderende lengte

  3. Hoe het kolomgegevenstype in de SQL-database te wijzigen zonder gegevens te verliezen

  4. Hoe installeer ik Oracle Instant Client op een Mac?