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

Mysql Дублиращи се редове (Дублиране е открито с помощта на 2 колони)

delete from myTable 
where id not in
(select min(id)
from myTable
group by A, B)

т.е. изборът в скоби връща първия идентификатор за всяка група от A и B; изтриването на всички идентификатори, които не са в този набор, ще премахне всички случаи на комбинация A-плюс-B, които са "последващи" след първото й появяване.

РЕДАКТИРАНЕ :този синтаксис изглежда е проблематичен:вижте доклада за грешка:

http://bugs.mysql.com/bug.php?id=5037

Възможно решение е да направите това:

delete from myTable 
where id not in
(
      select minid from 
      (select min(id) as minid from myTable group by A, B) as newtable
) 


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Грешка в TypeScript при използване на Op.between в Sequelize с дати

  2. грешка:Скриптът за настройка е излязъл с грешка:командата 'gcc' неуспешна със състояние на изход 1

  3. Изтичане на MySQL заявката:(70100):Изпълнението на заявката беше прекъснато

  4. PHP групово вмъкване foreach

  5. proxysql-admin Алтернативи - ClusterControl ProxySQL GUI