Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / Дублирующиеся записи / 7 сообщений из 7, страница 1 из 1
01.03.2006, 00:22
    #33572243
Евгений_СТ
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Дублирующиеся записи
Подскажите пожалуйста, а каким запросом можно выбрать из таблицы все дублирующиеся записи?

Например, таблица:

Код: plaintext
1.
2.
3.
create table СЧЕТЧИКИ (
  ЛицевойСчет_ИД    integer,
  ДатаУстановки       date
);

- из неё мне надо выбрать только те записи, которые повторяются 2 или более раз с одинаковыми парами значений.

Сервер АСА 9.0.2
...
Рейтинг: 0 / 0
01.03.2006, 00:42
    #33572251
Александр Гoлдун
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Дублирующиеся записи
Евгений_СТ пишет:

> - из неё мне надо выбрать только те записи, которые повторяются 2 или
> более раз с одинаковыми парами значений.

Выбрать - легко:
SELECT ЛицевойСчет_ИД, ДатаУстановки, count(*)
FROM СЧЕТЧИКИ
GROUP BY ЛицевойСчет_ИД, ДатаУстановки
HAVING count(*)>1

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

P.S. Не недо самому себе заботливо подкладывать лишние грабли, именуя
таблицы и поля кирилицей
Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
01.03.2006, 01:00
    #33572256
Евгений_СТ
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Дублирующиеся записи
Спасибо за подсказку! Буду изучать оператор HAVING, про которй я пока ещё, к стыду своему, ни разу не читал.

А таблица "без первичных ключей" - это не моя. Мне надо импортировать данные из чужой таблицы, структуру которой я привёл, в свою БД. У меня-то в таблице как раз ключи и все ограничения прописаны как надо... Вот они-то и не позволяют закачать дублирующиеся записи. Для чего мне и надо сперва найти их вручную в старой таблице, что-то сделать с ними (убится веником!!! разрядность счётчиков - 0. придушил бы операторов, которые это вводили), а потом уже закачать к себе.
...
Рейтинг: 0 / 0
01.03.2006, 01:50
    #33572274
White Owl
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Дублирующиеся записи
Так может можно сделать проще?
Код: plaintext
1.
insert into mytable (f1,f2)
  select distinct ЛицевойСчет_ИД, ДатаУстановки from СЧЕТЧИКИ;
...
Рейтинг: 0 / 0
01.03.2006, 01:56
    #33572278
Евгений_СТ
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Дублирующиеся записи
Нет, к сожалению так сделать я не могу. Информация есть - значит я её должен закачать. Даже если тётушки и вколотили потребителям по нескольку установленных счётчиков в один день. Ну вот кто меняет себе в квартире по 3 электросчётчика в день? Да ещё и регистрирует их в энергосбыте...

Записи хоть и с одной датой, но номера счетчиков и их начальные показания там разные. Максимум что я могу сделать - это изменить дату на плюс-минус один день.
...
Рейтинг: 0 / 0
01.03.2006, 06:42
    #33572346
ASCRUS
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Дублирующиеся записи
Это чисто организационный вопрос. Вы не должны конвертировать неправильную информацию - пользователи ее не будут особо проверять и таким образом Вы исказите информацию в базе. Вам лучше распечатать отчет с такими счетчиками и отдать его в Сбыт для проверки. Дальше по обстоятельствам - или скажут не конвертить, потому что вобьют потом сами или скажут, что брать один, потому что дубли не играют роли или ...

P.S. Кстати - это случаем на DBF ? А то может дубли просто записи, помеченные к удалению.
...
Рейтинг: 0 / 0
01.03.2006, 14:10
    #33573753
Евгений_СТ
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Дублирующиеся записи
Да, именно так я и собираюсь поступить. Не ломать голову над проблемами, которые не входят в мои служебные обязанности, а передать их по заведованию, в отдел сбыта. Покажу распечатку и пускай сами принимают решение.
...
Рейтинг: 0 / 0
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / Дублирующиеся записи / 7 сообщений из 7, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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