Ако искате да премахнете дублиран град със същия 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.