Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Удаление дубликатов по нескольким полям / 5 сообщений из 5, страница 1 из 1
17.11.2014, 14:02:09
    #38808310
igramnet
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Удаление дубликатов по нескольким полям
Здравствуйте, помогите составить запрос

Имеется

таблица в БД с полями

id, vendor_id, city_id, good_id

Все они INT

Задача: Удалить дубли по признакам: (одновременно одинаковые поля vendor_id, city_id, good_id)

Пример

id, vendor_id, city_id, good_id
1, 2, 3, 4
2, 2, 3, 4

Вот дубль. Надо как-то удалять только дубли (т.е. оставлять только одну строку).

Спасибо.
...
Рейтинг: 0 / 0
17.11.2014, 14:32:07
    #38808373
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Удаление дубликатов по нескольким полям
Код: sql
1.
CREATE IGNORE INDEX
...
Рейтинг: 0 / 0
17.11.2014, 16:58:21
    #38808572
igramnet
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Удаление дубликатов по нескольким полям
Не понял, расшифруйте, пожалуйста.
...
Рейтинг: 0 / 0
17.11.2014, 19:02:51
    #38808746
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Удаление дубликатов по нескольким полям
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
mysql> create table test(id int);
Query OK, 0 rows affected (0.35 sec)

mysql> insert into test
    -> select 1 union all
    -> select 2 union all
    -> select 3 union all
    -> select 2 union all
    -> select 1 union all
    -> select 4;
Query OK, 6 rows affected (0.21 sec)
Records: 6  Duplicates: 0  Warnings: 0

mysql> select * from test;
+------+
| id   |
+------+
|    1 |
|    2 |
|    3 |
|    2 |
|    1 |
|    4 |
+------+
6 rows in set (0.00 sec)

mysql> alter ignore table test add unique (id);
Query OK, 6 rows affected (2.06 sec)
Records: 6  Duplicates: 2  Warnings: 0

mysql> select * from test;
+------+
| id   |
+------+
|    1 |
|    2 |
|    3 |
|    4 |
+------+
4 rows in set (0.00 sec)

mysql>
...
Рейтинг: 0 / 0
18.11.2014, 12:32:48
    #38809353
igramnet
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Удаление дубликатов по нескольким полям
спасибо!
...
Рейтинг: 0 / 0
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Удаление дубликатов по нескольким полям / 5 сообщений из 5, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]