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

Вниз

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

 
vinni2000   (2002-01-03 14:02) [0]

Проблема, нужно в таблице удалить все повторяющиеся записи подскажите как написать такой запрос. Нужно срочно. Спасибо!!!!


 
Delirium   (2002-01-03 15:50) [1]

Пишу для MSSQL, из таблицы Test (ключевое поле id) удаляются все повторяющиеся (в поле cValue) записи:

delete from test
where id in (select id from
(select Min(id) as id,cValue,Count(*) as C
from test
group by cValue) tmp where c>1)


 
Fareader   (2002-01-03 16:06) [2]

Смотри чего на www.ib.demo.ru было

DELETE FROM XXX T1 WHERE EXISTS
(SELECT * FROM XXX T2 WHERE
(T2.column1 = T1.column1 or (T2.column1 is null and T2.column1 is null)) AND
(T2.column2 = T1.column2 or (T2.column2 is null and T2.column2 is null)) AND
(.......) AND
(T2.RDB$DB_KEY > T1.RDB$DB_KEY))

В этом случае используется RDB$DB_KEY - физический номер записи IB. Можно оставить как запись с самым большим DB_KEY, так и с самым меньшим (> или < в последнем условии WHERE).

Статья называется : Удаление или поиск дубликатов записей в таблице
Авторы: Diane Brown
Cognos


 
Delirium   (2002-01-03 16:18) [3]

>Fareader
Согласен, такой командой удаляются не только "двойные", но и все остальные "лишние".

delete test where id in
(select t2.id from test t1,test t2
where (t1.cValue=t2.cValue) and (t1.id<t2.id))


 
Fareader   (2002-01-03 16:23) [4]

Там же другой вариант, кажется этим я пользовался

SELECT * FROM TABLE T1
WHERE EXISTS
(SELECT FIELD FROM TABLE T2
WHERE T1.FIELD = T2.FIELD AND
T1.RDB$DB_KEY != T2.RDB$DB_KEY)

но надо проверить который из них...



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

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

Наверх




Память: 0.44 MB
Время: 0.076 c
1-8841
xmapa
2002-01-16 08:49
2002.02.04
Quick Report: группировка


1-8892
szap
2002-01-15 19:32
2002.02.04
Какая дата была была 5 дней назад?


1-8847
kserg@ukr.net
2002-01-21 10:24
2002.02.04
Можно ли в StringGrid-е выравнять текст ячейки?


14-8999
zero
2001-12-12 18:04
2002.02.04
Merlin и модераторы отзовитесь, объясните что случилось


3-8753
sos
2002-01-04 16:53
2002.02.04
Компонента для работы с файлами типа *.btr





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский