Удалить дубликаты записей между двумя таблицами

У меня есть две разные таблицы: пользователи и клиент. Есть много повторяющихся записей. Я пытался удалить эти записи-дубликаты и сохранить их в одну новую таблицу, но безуспешно. Он удаляет строки, а не записи. Есть ли запрос на удаление этих повторяющихся записей из двух таблиц?

Например, есть следующие строки:

| автомобиль | дом | еда |

| автомобиль | цикл | обувь |

| автобус | вода | дом|

Машина и дом - дубликаты записей. Я хочу их удалить, а остальные записи оставить в новой таблице с помощью GROUP BY.


person user3544023    schedule 29.04.2014    source источник
comment
Он удаляет строки, а не записи: строка и запись — это одно и то же. Можете ли вы уточнить, что вы имеете в виду?   -  person Blorgbeard    schedule 29.04.2014
comment
Например, есть следующие строки: | автомобиль | дом | еда | | автомобиль | цикл | обувь | | автобус | вода | дом| Машина и дом - дубликаты записей. Я хочу удалить их и оставить другие записи в новой таблице, используя GROUP BY   -  person user3544023    schedule 29.04.2014
comment
Почему у вас три записи в строке? Вы можете изменить эту схему? Потому что будет намного проще, если у вас будет одна запись в строке.   -  person Blorgbeard    schedule 29.04.2014
comment
Ok. Спасибо за предложение. Но я не знаю, как сгруппировать несколько столбцов в один столбец. Извиняюсь. Я действительно новичок в этом SQL, и я впервые его использую.   -  person user3544023    schedule 29.04.2014
comment
Это может помочь, если вы приведете реальные примеры ваших данных. То, что вы в настоящее время перечислили, выглядит так, как будто у вас есть три таблицы с одной строкой и тремя столбцами в каждой, и вы говорите, что любые два столбца с одинаковым значением являются дубликатами. Но обычно в SQL мы бы сказали, что что-то является дубликатом, только если это дубликаты ключа или всей строки.   -  person Beth Whitezel    schedule 29.04.2014


Ответы (1)


Во-первых, вы должны определить, что является дублирующейся записью в вашем случае, является ли это записью с похожим первичным ключом или записью, имеющей одинаковые столбцы. Предположим, что ваша запись имеет первичные ключи:

delete from users where id in (select id from client);
person Noor    schedule 29.04.2014