Вниз
Скачать: 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 вся ветка

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



Память: 0.46 MB
Время: 0.028 c
8-1131452209
kl0n™
2005-11-08 15:16
2006.04.16
Прозрачность


4-1138786134
Cashmare
2006-02-01 12:28
2006.04.16
WaitForSingleObject &amp; Synchronize


15-1143012008
vecna
2006-03-22 10:20
2006.04.16
Подскажите, где достать электронную документацию по FireBird?


2-1143713073
SeZu
2006-03-30 14:04
2006.04.16
Транзакции


2-1144076653
User_OKA
2006-04-03 19:04
2006.04.16
Последовательность чисел




   Наверх