Je ne peux pas modifier cette table car elle fait partie intégrante d'une
application.
Mme LEROY s'est mariée entre le 15/02 et le 20/02 don son nom de salarié à
changer.
Ma question :
En SQL, je voudrais supprimer de cette liste, les doulons du NumSalarie en
ne gardant que les occurence les plus récente. Pour n'avoir que :
Select * from tablesal ts1 where TS1.date_maj (Select max(TS2.date_maj) from tablesal TS2 WHERE TS2.Numsalarie = TS1.Numsalarie)
Gilles
Gilles
Donc pour trouver les lignes à supprimer
SELECT * from tablesal ts3 WHERE TS3.id not in (Select id from tablesal ts1 where TS1.date_maj (Select max(TS2.date_maj) from tablesal TS2 WHERE TS2.Numsalarie = TS1.Numsalarie))
gilles
Donc pour trouver les lignes à supprimer
SELECT * from tablesal ts3 WHERE TS3.id not in
(Select id from tablesal ts1 where TS1.date_maj (Select max(TS2.date_maj) from tablesal TS2 WHERE TS2.Numsalarie =
TS1.Numsalarie))
SELECT * from tablesal ts3 WHERE TS3.id not in (Select id from tablesal ts1 where TS1.date_maj (Select max(TS2.date_maj) from tablesal TS2 WHERE TS2.Numsalarie = TS1.Numsalarie))
gilles
Gilles
Oups en changeant le signe cela suffit pour avoir les ligne en doublon :-)
Select * from tablesal ts1 where TS1.date_maj <> (Select max(TS2.date_maj) from tablesal TS2 WHERE TS2.Numsalarie TS1.Numsalarie)
Gilles
Oups en changeant le signe cela suffit pour avoir les ligne en doublon :-)
Select * from tablesal ts1 where TS1.date_maj <>
(Select max(TS2.date_maj) from tablesal TS2 WHERE TS2.Numsalarie TS1.Numsalarie)