Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.03.17;
Скачать: CL | DM;

Вниз

SQL-запрос. Удаление повторений   Найти похожие ветки 

 
Ozone ©   (2003-02-27 07:57) [0]

Такая проблема - есть БД (Number-Integer, Date - Date)
Пример:
1 - 12.10.2003
2 - 13.12.2002
1 - 10.10.2003
3 - 04.04.1999
2 - 30.12.2002
Как сделать SQL-запрос, чтобы получилось так:
1 - 12.10.2003
2 - 30.12.2003
3 - 04.04.1999
(т.е. удалить все повторяющиеся в поле Number записи с учетом даты - чтобы дата оставалась максимальная)


 
Наталия ©   (2003-02-27 08:00) [1]

select number,max(date) group by number
Называть служебными словами поля в БД не рекомендуется


 
Ozone ©   (2003-02-27 08:03) [2]

Так я тоже могу, но мне нужно удалить физически


 
Жук ©   (2003-02-27 08:21) [3]

Записи с одинаковыми number и date чем-нить отличаются друг от друга ?


 
Виталий Панасенко   (2003-02-27 08:40) [4]

delete from table1 t1
where 2>(select count(*) from table1 t2 where t1.number=t2.number)
Но это не учитывает что нужно отсавить максимальную дату.


 
Ozone ©   (2003-02-27 09:05) [5]

To Жук: нет, ничем не отличаются


 
stone ©   (2003-02-27 09:40) [6]

Нужно добавить автоинкрементное поле, удалить "двойников" (Number-Integer, Date - Date) с большим или меньшим значением в автоинкрементном поле, удалить автоинкрементное поле


 
Johnmen ©   (2003-02-27 09:48) [7]

>stone © (27.02.03 09:40)
>...удалить автоинкрементное поле

Может оставить ? Пригодиться ? :))))))




Страницы: 1 вся ветка

Текущий архив: 2003.03.17;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.021 c
14-54301
Злодей
2003-02-28 22:24
2003.03.17
Компоненты...


9-53830
Kirushka
2002-10-16 17:47
2003.03.17
Delphi и OpenGL


3-53896
sandrina
2003-02-25 14:30
2003.03.17
Rave Reports


1-54084
Альф
2003-03-05 11:38
2003.03.17
Как вызвать из программы runtime error 201 (Range check error) ?


3-53948
Ed
2003-02-24 18:39
2003.03.17
Delphi&FoxPro