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

Вниз

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

 
Os ©   (2006-02-20 09:33) [0]

Имеем таблицу типа
Id Key Val1 Val2
1   2     3     10
2   2     4      null
3   2     5      null
4   2     3      null

Запись val2 делается для всех одинаковых Key
Update table set val2=10 where Key=2

Как с min затратами оставить только запись в котой Val1 min, а остальные записи удалить


 
Johnmen ©   (2006-02-20 10:27) [1]

DELETE FROM Table WHERE Val1 <> (SELECT MIN(Val1) FROM Table)


 
Os ©   (2006-02-20 10:42) [2]


> DELETE FROM Table WHERE Val1 <> (SELECT MIN(Val1) FROM Table)


Можна вставить в триггер?


 
ЮЮ ©   (2006-02-20 10:42) [3]


> Как с min затратами оставить только запись в котой Val1
> min,


1   2     3     10
4   2     3      null

А что по-твонму меньше, 10 или NULL


> WHERE Val1 <> (SELECT MIN(Val1) FROM Table)


Не учитывается Key


 
Os ©   (2006-02-20 10:50) [4]

null является признаком для добавления записей


 
ЮЮ ©   (2006-02-20 10:53) [5]

А что по-твонму меньше, 10 или NULL
сорри, не обратил внимание, что c минимальным Val1


> Можна вставить в триггер?


Зачем тогда вставлять записи, которые тут же могут быть убиты триггером? Может тогда делать Update?


 
Os ©   (2006-02-20 10:57) [6]

Записи поступают от источника состояния объекта и там возможны различные варианты перехода, и лишние записи необходимо убить, оставив максимальное время отказа.


 
Johnmen ©   (2006-02-20 11:00) [7]

>Можна вставить в триггер?

Можна. Но не нужно...
Ты скажи, в чём проблема-то?

>ЮЮ ©   (20.02.06 10:42) [3]
>> WHERE Val1 <> (SELECT MIN(Val1) FROM Table)
>Не учитывается Key

Ну и что?


 
Os ©   (2006-02-20 11:01) [8]

Обсуждение закрыто. Спасиба за участие. Действительно проще создать уникальный индекс и не допускать создание таких записей.



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

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

Наверх




Память: 0.48 MB
Время: 0.029 c
15-1143353614
Parus
2006-03-26 10:13
2006.04.16
В низу экрана, где "Пуск"...


2-1143812478
SilentDon
2006-03-31 17:41
2006.04.16
Ошибка при вызове SetLength применительно к динамическим массивам


2-1143620027
Lera
2006-03-29 12:13
2006.04.16
TApplication


4-1138199340
Dyakon_Frost
2006-01-25 17:29
2006.04.16
Использование StartService


2-1144061255
Gydvin
2006-04-03 14:47
2006.04.16
кординаты символа в RichEdit