Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Jak usunąć zduplikowane wiersze i zachować wiersz o wyższej wartości?

delete t1 
from some_table t1
join some_table t2
  on  t2.a3 = t1.a3
  and t2.a4 > t1.a4;

Demo:http://rextester.com/RERGD32491

Spowoduje to zachowanie tylko wierszy o najwyższej wartości w A4 na A3 . Możliwe, że dwa wiersze z tą samą wartością w A3 mieć taką samą najwyższą wartość w A4 . Ponieważ nie określiłeś, co robić w takim przypadku - oba wiersze zostaną zachowane.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Dynamiczne zapytanie krzyżowe MySQL:Wybieranie rekordów podrzędnych jako dodatkowych kolumn

  2. Zmienne MySQL przechowujące nazwę bazy danych

  3. Łączenie kontenerów django i mysql za pomocą docker-compose

  4. GROUP_CONCAT w podzapytaniu IN

  5. Kiedy sygnatura czasowa (automatycznie) jest aktualizowana?