удалить двойников

Запросы, планы, оптимизация запросов, ...

Модераторы: kdv, CyberMax

Ответить
Dido
Сообщения: 3
Зарегистрирован: 24 мар 2005, 15:21

удалить двойников

Сообщение Dido » 24 мар 2005, 15:34

есть таблица,содержить 3 поле(f,f1,f2),надо удалить двоиников в таблице,что-б в таблице остался только достоверные
select max(f),f1,f2
from table
group by f1,f2
во это как вы делает? :?:

MuirsheenDurkin
Сообщения: 44
Зарегистрирован: 21 янв 2005, 10:18

Re: удалить двойников

Сообщение MuirsheenDurkin » 24 мар 2005, 15:48

delete from table t
where
exists (select * from table s
where t.f1=s.f1 and t.f2=s.f2 and s.f > t.f)

Ты бы с русским языком как-нибудь полегче бы обходился бы...

Dido
Сообщения: 3
Зарегистрирован: 24 мар 2005, 15:21

Re: удалить двойников

Сообщение Dido » 25 мар 2005, 09:45

MuirsheenDurkin писал(а):delete from table t
where
exists (select * from table s
where t.f1=s.f1 and t.f2=s.f2 and s.f > t.f)

Ты бы с русским языком как-нибудь полегче бы обходился бы...
а на русском это как понять? :lol:
что означает?чё делает?

MuirsheenDurkin
Сообщения: 44
Зарегистрирован: 21 янв 2005, 10:18

Re: удалить двойников

Сообщение MuirsheenDurkin » 25 мар 2005, 09:48

Это запрос, он удаляет из таблицы table все записи, кроме тех, которые ты назвал "достоверными". Я бы из назвал "имеющими максимальное значение в поле f при прочих равных f1 и f2".

Dido
Сообщения: 3
Зарегистрирован: 24 мар 2005, 15:21

Re: удалить двойников

Сообщение Dido » 25 мар 2005, 10:01

MuirsheenDurkin писал(а):Это запрос, он удаляет из таблицы table все записи, кроме тех, которые ты назвал "достоверными". Я бы из назвал "имеющими максимальное значение в поле f при прочих равных f1 и f2".
спасибо,то что надо !!! :!:

Ответить