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

Премахнете дублиращи се редове от таблицата с присъединяване

Ако искате да премахнете дублиран град със същия state_id (дублиращи се записи), можете да направите това, като ги групирате по град и идентификатор_на_състояние и с помощта на MIN или MAX функция:

Преди заявката за изтриване таблицата ви изглеждаше като

<предварителен код>| ID | STATE_ID | ГРАД |---------------------------------------| 1 | 1 | град_един || 2 | 1 | град_два || 3 | 1 | град_един || 4 | 1 | град_два || 5 | 2 | град_един || 6 | 3 | град_три || 7 | 3 | град_един || 8 | 3 | град_три || 9 | 4 | град_четири || 10 | 4 | град_пет |

Можете да използвате следната заявка, за да премахнете дублиращи се записи:

ИЗТРИВАНЕ city_table ОТ city_table LEFT JOIN (ИЗБЕРЕТЕ MIN(id) КАТО ИДЕНТИФИКАЦИИ ОТ city_table ГРУПА ПО city,state_id )A ON city_table.ID =A.IDs WHERE A.ids IS NULL; 

След като приложите горната заявка, вашата таблица ще изглежда така:

<предварителен код>| ID | STATE_ID | ГРАД |---------------------------------------| 1 | 1 | град_един || 2 | 1 | град_два || 5 | 2 | град_един || 6 | 3 | град_три || 7 | 3 | град_един || 9 | 4 | град_четири || 10 | 4 | град_пет |

Вижте този SQLFiddle

За повече вижте ИЗТРИВАНЕ Синтаксис на MySQL.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Сума стойности на един ред?

  2. UPDATE mysql op не работи с cc-номер

  3. Как да получите месеца от дата в MySQL

  4. PHP MySql (1045) Достъпът е отказан за потребителя

  5. Как да получа днешни/вчерашни данни от MySQL база данни?