Mysql
 sql >> база данни >  >> RDS >> Mysql

Как да изтрия дублиращи се редове и да запазя реда с по-висока стойност?

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

Демонстрация:http://rextester.com/RERGD32491

Това ще запази само редове с най-висока стойност в A4 за A3 . Възможно е два реда с еднаква стойност в A3 имат същата най-висока стойност в A4 . Тъй като не сте посочили какво да правите в този случай - и двата реда ще бъдат запазени.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Можем ли да използваме PHP функция strtotime в Mysql Query

  2. PHP MySQL обработка на грешки

  3. Колона за присъединяване на неизвестна клауза на MYSQL в следващото присъединяване

  4. Липсващи връзки към базата данни eclipse

  5. Възможно ли е да се качи файл в таблицата на базата данни на mysql от JMeter?