Вниз
Скачать: CL | DM;

FireBird неповторяющиеся записи   Найти похожие ветки 

 
dest81   (2008-01-29 12:50) [0]

Есть таблица с полями N, Name, Money где N уникальное, а остальные столбцы могут повторяться. Например:
1  Вася  20
2  Петя  30
3  Вася  20
Как удалить одинаковые записи (кроме N, так ка оно уникально) тоесть получить такое
1  Вася  20
2  Петя  30
или
2  Петя  30
3  Вася  20


 
dest81   (2008-01-29 12:55) [1]

Это хотелось бы в FireBird-е сделать не через делфи


 
ANB ©   (2008-01-29 13:03) [2]

delete from Table1 T where exists (select 1 from Table1 T1 where T1.Name = T.Name and T1.Money = T.Money and T1.N < T.N)

Так останутся тока записи с самыми маленькими Н. Дубли в большими Н удаляться.

ЗЫ. Повесь уникальный индекс / ключ, чтобы больше дублей не было


 
dest81   (2008-01-29 13:15) [3]

Большое спасибо ! Работает! Видать надо sql подучить


 
ANB ©   (2008-01-29 13:20) [4]


> надо sql подучить

С этого надо начинать :)


 
Anatoly Podgoretsky ©   (2008-01-29 14:24) [5]

И установить уникальный индекс на Name, Money, а то будешь всю жизнь удалять.



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.011 c
11-1191199661
Jon
2007-10-01 04:47
2008.07.06
GRushButton Accelerator


2-1212668598
Alex
2008-06-05 16:23
2008.07.06
Компонент savedialog


15-1211717736
KrendelSladkij
2008-05-25 16:15
2008.07.06
Z-order контролов


15-1210089446
Anatoly Podgoretsky
2008-05-06 19:57
2008.07.06
Тестирование NNTP сервера


9-1172040240
Cerberus
2007-02-21 09:44
2008.07.06
Вопрос XProger у по его сетевому модулю.




   Наверх