|
Удаление дубликатов записей
|
|||
---|---|---|---|
#18+
Есть табличка с полями PEOPLE_ID и DAT_PRINT (тип Date ). Некоторые записи дублируются - имеют одинаковые значения в поле PEOPLE_ID . Как оставить только те записи у которых стоит дата печати ( DAT_PRINT ), а дубликаты этих записей без проставленной даты печати удалить?? ... |
|||
:
Нравится:
Не нравится:
|
|||
19.01.2006, 16:58 |
|
Удаление дубликатов записей
|
|||
---|---|---|---|
#18+
delete from <TableName> a where a.PEOPLE_ID in (select b.PEOPLE_ID from <TableName> b where b.People_ID=a.PEOPLE_ID and empty(b.DAT_PRINT)) ... |
|||
:
Нравится:
Не нравится:
|
|||
19.01.2006, 17:03 |
|
Удаление дубликатов записей
|
|||
---|---|---|---|
#18+
Hi AleksMed! Это не только дубликаты удалит! А вообще все те записи, где хотя-бы в одном "дубле" есть пустая дата!!! Posted via ActualForum NNTP Server 1.3 ... |
|||
:
Нравится:
Не нравится:
|
|||
20.01.2006, 01:18 |
|
Удаление дубликатов записей
|
|||
---|---|---|---|
#18+
Igor Korolyov Hi AleksMed! Это не только дубликаты удалит! А вообще все те записи, где хотя-бы в одном "дубле" есть пустая дата!!! Posted via ActualForum NNTP Server 1.3 Угу, незачем иметь ID с пустой датой. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.01.2006, 09:06 |
|
Удаление дубликатов записей
|
|||
---|---|---|---|
#18+
Что я сделал не так?: Я создал таблицу POLISb - копию таблицы POLISa и запустил : Код: plaintext
в итоге из таблицы POLISa удалились ВСЕ дублированные записи и записи с пустыми DAT_PRINT . Дело в том, что таблица у меня одна ( POLISa ) и в ней находяться дублированные (по PEOPLE_ID ) записи. Необходимо удалить ТОЛЬКО дубликаты с пустыми DAT_PRINT ! Есть решение этой задачки??? ... |
|||
:
Нравится:
Не нравится:
|
|||
20.01.2006, 10:46 |
|
Удаление дубликатов записей
|
|||
---|---|---|---|
#18+
А что, просто записи с пустыми DAT_PRINT не удалить? (Это я к тому, что разве они нужны?) ... |
|||
:
Нравится:
Не нравится:
|
|||
20.01.2006, 18:42 |
|
Удаление дубликатов записей
|
|||
---|---|---|---|
#18+
Hi anton_81! 1) Что делать если среди дублей будет НЕСКОЛЬКО записей с непустой датой? 2) Что делать если среди дублей ВСЕ записи будут иметь пустую дату? Ответь сначала на эти вопросы, тогда посмотрим что дальше тебе советовать :) Posted via ActualForum NNTP Server 1.3 ... |
|||
:
Нравится:
Не нравится:
|
|||
21.01.2006, 01:53 |
|
Удаление дубликатов записей
|
|||
---|---|---|---|
#18+
Igor Korolyov 1) Что делать если среди дублей будет НЕСКОЛЬКО записей с непустой датой? 2) Что делать если среди дублей ВСЕ записи будут иметь пустую дату? Ответь сначала на эти вопросы, тогда посмотрим что дальше тебе советовать :) 1) если несколько - то оставлять все дубли (или оставить одну любую запись если возможно) 2) удалить все эти записи с пустой датой вот так. очень надеюсь на Вашу помощь :) ... |
|||
:
Нравится:
Не нравится:
|
|||
23.01.2006, 14:29 |
|
Удаление дубликатов записей
|
|||
---|---|---|---|
#18+
Может попробовать через select ? Код: plaintext 1. 2. 3.
Код: plaintext 1. 2. 3.
... |
|||
:
Нравится:
Не нравится:
|
|||
23.01.2006, 19:46 |
|
Удаление дубликатов записей
|
|||
---|---|---|---|
#18+
anton_81 Igor Korolyov 1) Что делать если среди дублей будет НЕСКОЛЬКО записей с непустой датой? 2) Что делать если среди дублей ВСЕ записи будут иметь пустую дату? Ответь сначала на эти вопросы, тогда посмотрим что дальше тебе советовать :) 1) если несколько - то оставлять все дубли (или оставить одну любую запись если возможно) 2) удалить все эти записи с пустой датой вот так. очень надеюсь на Вашу помощь :) Можно ли сформулировать условие следующим образом: 1) Удалить ВСЕ записи с пустой датой 2) Среди оставшихся удалить дубли Отличия заключаются в том, что делать если запись НЕ имеет дублей, но ее дата пустая? Кстати, таблица имеет уникальный идентификатор записи? Т.е. некое поле, значение которого гарантировано уникально для ВСЕХ записей таблицы. По этому полю дублей быть не может в принципе. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.01.2006, 22:47 |
|
Удаление дубликатов записей
|
|||
---|---|---|---|
#18+
Да, кстати, если надо удалить все записи с пустым значением DAT_PRINT вне зависимости от того, есть у них дубли или нет, то можно так: Код: plaintext 1. 2. 3. 4. 5. 6.
Правда, это требует эксклюзивного открытия таблицы. Остануться только уникальные записи с заполненным значением DAT_PRINT. Но также будут удалены и записи у которых нет дублей, но значение поля DAT_PRINT не указано. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.01.2006, 23:15 |
|
Удаление дубликатов записей
|
|||
---|---|---|---|
#18+
Hi anton_81! >> 1) Что делать если среди дублей будет НЕСКОЛЬКО записей с непустой датой? >> 2) Что делать если среди дублей ВСЕ записи будут иметь пустую дату? > 1) если несколько - то оставлять все дубли ВСЕ - это значит и с пустой датой тоже??? > (или оставить одну любую запись если возможно) в SQL нету понятия "любую" - впрочем и просто с точки зрения формальной логики это невозможно. В лучшем случае можно оперировать физическим порядком следования записей - но SQL этого конечно не сделает - впрочем простым циклом можно всё решить. > 2) удалить все эти записи с пустой датой И тут ты противоречишь сам себе - ты же говорил что нужно оставить одну из группы - а теперь говоришь что нет... Впрочем что спросил то и получи: Код: plaintext 1. 2. 3.
таблицы я не понял. Posted via ActualForum NNTP Server 1.3 ... |
|||
:
Нравится:
Не нравится:
|
|||
24.01.2006, 03:50 |
|
Удаление дубликатов записей
|
|||
---|---|---|---|
#18+
Igor Korolyov Впрочем что спросил то и получи: Спасибо, всё сработало! :) Тему закрываю 8) ... |
|||
:
Нравится:
Не нравится:
|
|||
24.01.2006, 13:00 |
|
Удаление дубликатов записей
|
|||
---|---|---|---|
#18+
Многие программы могут поиск и удаление дубликатов файлов . Скачай эту, например. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.09.2010, 11:32 |
|
|
start [/forum/topic.php?fid=41&msg=33495376&tid=1584984]: |
0ms |
get settings: |
11ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
44ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
43ms |
get tp. blocked users: |
1ms |
others: | 356ms |
total: | 487ms |
0 / 0 |