
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
05.11.2018, 03:28
|
|||
|---|---|---|---|
|
|||
Удаление дубликатов. |
|||
|
#18+
Есть таблица table с дубликатами данных: A ------ 1 1 1 2 3 4 4 5 5 Селект для удаления: select A, row_number() over (partition by A order by A) as RN from TABLE where RN > 1 Выводит ошибку: ORA-00904: "RN": invalid identifier 00904. 00000 - "%s: invalid identifier" *Cause: *Action: Error at Line: 4 Column: 7 Селект без where выводит результат: A RN ------ 1 1 1 2 1 3 2 4 3 1 4 1 4 2 5 1 5 2 Как удалить дубликаты? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
05.11.2018, 07:24
|
|||
|---|---|---|---|
Удаление дубликатов. |
|||
|
#18+
Как удалить дубликаты или как исправить твой запрос? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
05.11.2018, 07:31
|
|||
|---|---|---|---|
|
|||
Удаление дубликатов. |
|||
|
#18+
andreymxКак удалить дубликаты или как исправить твой запрос? Как удалить дубликаты. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
05.11.2018, 08:38
|
|||
|---|---|---|---|
Удаление дубликатов. |
|||
|
#18+
www.sql.ru/faq/faq_topic.aspx?fid=711 Тут смотрел? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
05.11.2018, 17:05
|
|||
|---|---|---|---|
|
|||
Удаление дубликатов. |
|||
|
#18+
andreymxwww.sql.ru/faq/faq_topic.aspx?fid=711 Тут смотрел? Если применить, как там предлагают: delete TABLE where A in (select A from (select A, row_number() over (partition by A order by A) rn from TABLE) where rn > 1); то останется из этого: A RN ------ 1 1 1 2 1 3 2 1 3 1 4 1 4 2 5 1 5 2 => A RN ------ 2 1 3 1 А надо, что бы осталось: A RN ------ 1 1 2 1 3 1 4 1 5 1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
05.11.2018, 17:17
|
|||
|---|---|---|---|
Удаление дубликатов. |
|||
|
#18+
Piastry, авторЕсли в таблице нет уникального ключа или индекса, по которому можно отсеивать дубликаты (в примере используется уникальность поля TEST_DUPLICATE.duplicate_id), то можно использовать псевдо столбец ROWID delete t where rowid not in (select min(rowid) r from t group by a) .... stax ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=52&mobile=1&tid=1883243]: |
0ms |
get settings: |
8ms |
get forum list: |
17ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
156ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
38ms |
get tp. blocked users: |
1ms |
| others: | 199ms |
| total: | 435ms |

| 0 / 0 |
